Mark248:
3) Should i put some sort of DIODE on the input (which is 12V) ? i am using like 15A current for the whole circuit which include Pumps,LED strip etc so which diode should i be using if any?
The Arduino Mega has a diode on the power input from the barrel jack to protect the board in case the user reverses the polarity of the power supply. When sending a product out "into the wild" you have to expect this sort of thing will happen and a diode is an easy way to protect against it. However, in an application where you know for sure that the polarity of the power supply will always be correct, you could skip that diode.
Mark248:
why are people putting 1k resistor between controller pin and connector?
If the pin is used as an output, the resistor will limit the current draw from the IO pin, protecting the ATmega2560 from damage if there was a short circuit.
If the pin is used as an input, the resistor will provide some protection against voltage spikes induced in the line. For details, see this nice article:
There are likely some applications where the resistor would interfere with the intended usage of the pin.
Mark248:
5) can you please tell me the ways to burn sketch and boot loader into the atmega 2560? i just want names of that process and i will google all of them.
Connect an ISP programmer to your ATmega2560. If you don't own an ISP programmer, you can use a spare Arduino board as an "Arduino as ISP": https://www.arduino.cc/en/Tutorial/ArduinoISP
Select the correct board from the Tools > Board menu. If you're running the ATmega2560 at 16 MHz, you can use Tools > Board > Arduino/Genuino Mega or Mega 2560.
Tools > Burn Bootloader. This will set the configuration fuses on the ATmega2560 and upload the bootloader to it.
At this point you have two options for how to upload the program to the ATmega2560:
You can upload it via the ISP programmer by opening the sketch in the Arduino IDE and then doing Sketch > Upload Using Programmer. Note that some ISP programmers are not able to upload to the ATmega2560. The Arduino as ISP will be able to do it. The other popular ISP programmer, named USBasp is able to do it only after installing a custom firmware, which will require a second ISP programmer (which could be an Arduino as ISP). This issue only applies to Upload Using Programmer. There is no problem with Burn Bootloader.
The other option is to put a USB to TTL serial adapter chip, or attach an external cable or board (AKA "FTDI") to Arduino pins 0 and 1 of the ATmega2560. Plug that into your computer and select its port from the Tools > Port menu. Now you can upload sketches using Sketch > Upload. Note that if you do a Sketch > Upload Using Programmer, it erases the bootloader so you always need to do another Tools > Burn Bootloader after Upload Using Programmer before you can do a standard Upload again. Although it takes extra components for this option, it's convenient for development work because often people are printing data over serial to the computer for debug output anyway. This allows you to use that same connection for both debug output and uploading. I recommend studying the "Programming a sketch" section of this tutorial to see how to use the serial interface, especially the auto reset circuit: