mxmlc: fitter, happier, more productive

15
mxmlc: fitter, happier, more productive Brian Deitte

Upload: brian-deitte

Post on 21-May-2015

2.570 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: mxmlc: fitter, happier, more productive

mxmlc: fitter, happier, more productive

Brian Deitte

Page 2: mxmlc: fitter, happier, more productive

more productive (with faster compiles)

Page 3: mxmlc: fitter, happier, more productive

Tips for Flex Builder 3

••

••••

• Build every application in one project using multiple source pathsBuild parts of the applications as SWCs Close extra projectsUse a system font instead of embedding fontsTurn off "Copy non-embedded files to source folder"Turn off "Build Automatically"More tips at: http://www.deitte.com/archives/2008/10/how_do_you_spee.htm

Page 4: mxmlc: fitter, happier, more productive

General Flex 3 Speedup

• To get a 25% speedup, use pieces of Flex 4: http://www.deitte.com/archives/2008/10/a_faster_flex_3.htm

Want more of a speedup? Use Flex 4

Page 5: mxmlc: fitter, happier, more productive

Tips for Flash Builder 4

• Use the Flex 4 SDK

Use the Flex Builder 3 tips other than using one large project

Page 6: mxmlc: fitter, happier, more productive

fitter (with smaller SWFs)

Page 7: mxmlc: fitter, happier, more productive

Use You Compiler Options Wisely

• Use framework RSL... if at all possible:http://livedocs.adobe.com/flex/3/html/help.html?content=rsl_09.html

Use conditional compilation... with care:http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_21.html

Page 8: mxmlc: fitter, happier, more productive

Third-party Happiness

• Third-party projects can help with smaller SWFsTested with 431 KB SWF that uses framework RSL, Cairngorm, and has a lot of embedded imagesAlso tested with a 254 KB SWF that only uses AS3, architected for size, and has no embedded images

Page 9: mxmlc: fitter, happier, more productive

Flash Optimizer

••

• http://www.flashoptimizer.com/

Using "Good" compression settings:SWF #1: 17% savingsSWF #2: 0% savings

Page 10: mxmlc: fitter, happier, more productive

secureSWF

••

• http://www.kindisoft.com

Using the "Optimize for size" settings: SWF #1: 4% savingsSWF #2: 5% savings

Page 11: mxmlc: fitter, happier, more productive

Apparat Reducer

••

• http://code.google.com/p/apparat/

At .5 for both settings:SWF #1: 3% savingsSWF #2: 0% savings

Page 12: mxmlc: fitter, happier, more productive

Apparat TAAS

•• http://code.google.com/p/apparat/

Look for more details as they show up on http://blog.joa-ebert.com/Lots of excitement around the project with many potential compiler optimizations Based on TODOs in TaasBuilder.java, not usable right now for real SWFs

Page 13: mxmlc: fitter, happier, more productive

Flex 4 Changes• Image compression in Embed. To quote:

"The fix for SDK-18954 adds Embed support for smoothing, compression and quality. For example:

[Embed (source='foo.png', smoothing="false", compression="true", quality="80")] private var bar:Class;

smoothing and compression are booleans and quality is a percentage between 0 and 100. quality requires that compression be true. The actual smoothing is implemented by the player at runtime."

Page 14: mxmlc: fitter, happier, more productive

Future Changes?

• In Alchemy: C to LLVM to AVM2 bytecode

In iPhone kit: AS3 to LLVM to ARM assembly code

In Future: AS3 to LLVM to AVM2 bytecode?

Page 15: mxmlc: fitter, happier, more productive

happier (with answers to your questions)