Specifications
71ADOBE FLEX 3
Building and Deploying Adobe Flex 3 Applications
If you have multiple applications but those applications share a core set of components or classes, your users will
be required to download those assets only once as an RSL. The applications that share the assets in the RSL use
the same cached RSL as the source for the libraries as long as they are in the same domain. The resulting file size
for your applications can be reduced. The benefits increase as the number of applications that use the RSL
increases.
When you create an RSL, be sure to optimize it prior to deployment. This removes debugging information as well
as unnecessary metadata from the RSL, which can dramatically reduce its size.
For more information, see “Using Runtime Shared Libraries” on page 195.
Application coding
The MXML language provides a rich set of controls and classes that you can use to create interactive applications.
This richness sometimes can reduce performance. However, there are some techniques that a Flex developer can
use to improve the run-time performance of the Flex application.
To measure the effects of the following techniques, you should use the Flex profiler. For more information, see
“Profiling Flex applications” on page 155 in Using Adobe Flex Builder 3.
Object creation and destruction
Object creation is the task of instantiating all the objects in your application. These objects include controls,
components, and objects that contain data and other dynamic information. Optimizing the process of object
creation and destruction can result in significant performance gains. Object destruction is the act of reallocating
memory for objects after all references to those objects have been removed. This task is carried out by the garbage
collector at regular intervals. You can improve the frequency that Flash Player and AIR destroy objects by
removing references to objects.
No single task during application initialization takes up the most time. The best way to improve performance is
to create fewer objects. You can do this by deferring the instantiation of objects, or changing the order in which
they are created to improve perceived performance.
Using ordered creation
Yo u c a n i m pr o ve perceived startup time of your Flex application by ordering the creation of containers in the initial
view. The default behavior of Flex is to create all containers and their children in the initial view, and then display
everything at once. The user cannot interact with the application or see meaningful data until all the containers
and their children are created.
In some cases, you can improve the user’s initial experience by displaying the components in one container before
creating the components in the next container. This process is called ordered creation.










