Programming 328P over UART/232

Here's my issue: I want to program an ATmega328p over UART over USB (FT232R), but with AVR studio. I need to read data over UART over USB once the AVR is programmed, but I don't know if there is a way to accomplish this, without using the Arduino boot loader and maintaining compatibility with AVR studio.

Also, the 328p that I plan to use is a surface mount (TQFP) so standard programmers like the STK500 is sort of out of the question (unless there is a socket for it?).

Any ideas?

If the board has a 6-pin (or 10 pin) ICSP header you can use that to connect an ISP programmer.