Adobe的Flash编译器(ASC, ActionScript Compiler)表现得实在太“昨天”了,加上Flash虚拟机在性能上还有很大的提升空间,Flash很多时候被当做玩具或者被戏称为CPU hog。
一般来说,我们很少会手去工优化一个SWF,大多数情况下,它都能良好地运行,但是当一个SWF文件尺寸过大导致加载时间过长或者代码执行时间过长导致帧频过低时,我们就需要考虑对SWF进行优化了,例如代码的精简,静态资源(图片、视频等)的压缩。但是手动优化产生的性能提升很是有限,更多的优化任务本应该交给编译器来完成的,值得感激的是,Apparat框架可以帮助我们从手动优化的噩梦中解脱出来,不仅如此,任何未经过优化的SWF都能从中得到优化。Apparat的作者joa ebert在Flash性能优化领域有深刻见解,今年的FlashAndTheCity大会上,joa的出色工作为他赢得了“2010年最天才的Flash开发者”和“2010年最杰出的贡献者”两项大奖。
Apparat框架通过Scale写成,在实践它之前,需要先安装Scala 2.8.0,Java 1.6,另外7-zip的安装是可选的。搭建好这些基本的运行环境后(需要加入到PATH环境变量中),从Google Code可下载最新的安装包(目前是1.0RC8)。下载后解压到新的文件夹,其中包含的文件有: