Arduino relies on an "out of process" compiler. Arduino IDE has to start a seperate program to compile the program.
The transfer to the Atmega processors flash memory takes place over a slow serial connection.
But remember that once the program is in the flash memory it remains, surviving powercycling the Atmega processor, so it is only if you need to make changes in your program it matters.