Specifications

57
Chapter 4: Optimizing Flex Applications
After you have a working application, you can explore ways to make that application download faster and perform
better.
Topics
Improving client-side performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Improving client-side performance
Tuning software to achieve maximum performance is not an easy task. You must commit to producing efficient
implementations and monitor software performance continuously during the software development process.
Employ the following general guidelines when you test applications for performance, such as using the
getTimer() method and checking initialization time.
Before you begin actual testing, you should understand some of the influences that client settings can have on
performance testing. For more information, see “Configuring the client environment” on page 62.
In addition to these techniques, you should also consider using the Adobe® Flex® profiler in Adobe® Flex® Builder™.
For more information, see “Profiling Flex applications” on page 155 in Using Adobe Flex Builder 3.
General guidelines
You can use the following general guidelines when you improve your application and the environment in which
it runs:
Set performance targets early in the software design stage. If possible, try to estimate an acceptable perfor-
mance target early in the application development cycle. Certain usage scenarios dictate the performance require-
ments. It would be disappointing to fully implement a product feature and then find out that it is too slow to be
useful.
Understand performance characteristics of the application framework, and employ the strategies that
maximize the efficiency of components and operations.
Understand performance characteristics of the application code. In medium-sized or large-sized projects, it is
common for a product feature to use codes or components written by other developers or by third-party vendors.
Knowing what is slow and what is fast in dependent components and code is essential in getting the design right.