This answer is a little more general than what you are probably looking for (it applies to all web applications, whether based on Flash / Flex or HTML / CSS / JS or something else), but ...
It depends on your application. Is this an application that will download all day and update it if necessary (for example, Gmail), or is it something that will be launched, used, and then closed?
If the first, in addition to reducing the size of resources, you are probably good here. It makes sense to download everything right away, rather than expecting the user to endure delays at every step.
If the latter, you should be lazy as much as possible. In other words, for example, instead of embedding all the application’s graphics in SWF, load them using URLRequest or any other method needed when they are needed. A faster start will “feel” faster and more than compensate for increased HTTP requests in a short time.
source share