你对Flex性能优化的概念是否了解,这里和大家分享一下,众所周知,目前国内的宽带应用并不是像很多发达国家发达,个人应用带宽基本上都是2M以下的,怎么样能够使你的Flex应用能够流畅的运行在客户端的问题,成为了制约每个Flex应用开发程序员的大难题。在这里,我收集整理了一下网络上关于这方面经验,欢迎大家补充。
Flex性能优化基本原则:
1.从外部加载媒体(Media)
Heider提到了一个常用的Flex最佳实践--限制嵌入到应用/SWF文件中的媒体的数量,如图像、影片及mp3等资源都可以从外部的SWF文件加载。
Flex框架可以直接将图片、mp3及字体等资源编译到SWF中。当你想让最终用户获得全部资源时,这种方式确实能派上用场,但是这会导致你的应用长时间停留在"Loading"阶段。
2.在嵌入式字体中限制字符集
Flex性能优化的第二个原则就是在嵌入式字体中限制字符集,Heider建议在嵌入式字体中限制字符集以降低SWF文件的总下载时间:
当你在Flex中嵌入一种字体时,你就会获得该字体的全部字符的支持。尽管这可能是你想要的,但你确信你需要全部字符么?例如,在一个只面向英文的应用中,你确信你真的想花时间下载中文字符数据么?
3.缓存框架
Heider回顾了Flex3supportforruntime-shared-libraries(RSL)这篇文章:
从Flex3开始,你可以将Adobe签名的框架--RSLs缓存到FlashPlayer的cache中。这有两个好处。首先,缓存在FlashPlayercache中的签名的框架RSLs可由所有配置好的Flex应用共享。换句话说,如果某人的应用已经下载了500k的签名的框架RSL,并且该RSL仍旧在FlashPlayercache中,那么你的应用就可以使用缓存下来的RSL。其次,即使某人清空了其浏览器缓存,对FlashPlayercache也没有任何影响。
4.考虑模块化
Flex性能优化的第四个原则就是模块化,Heider谈到了将Flex应用划分成模块的好处:减少字体加载时间的另一种方式就是将你的Flex应用划分成模块。使用模块的一个好处在于当加载和卸载模块时你能完全操控它。
之所以要划分成模块的最后一个原因是他们更快,而且我能即时加载它们。换句话说,在启动时唯一需要加载的模块就是Step1.swf模块。因此,在使用模块的情况下,最终用户节省了启动时间,但是当他从一个模块切换到另一个模块时却需要花更多时间,因为每个模块都需要以JIT形式加载。在我的应用中,只有当用户首次在steps1-5之间切换时需要花更多时间。
5.推迟实例化
Heider围绕着Flex组件的"creationPolicy"属性及何时实例化应用的不同部分给出了很多建议。
如果你想减少从数据下载到用户真正可以使用的总时间,当务之急就是推迟实例化。这项技术背后的理念就是直到应用真正使用的时候才在内存中创建对象。
尽管推迟实例化技术会在应用的整个使用过程中导致少许--通常不那么明显--的延迟,但与长时间的启动延迟相比,它还是可接受的。推迟实例化的另一个好处在于内存使用的优化。
以上Flex性能优化原则来自JunHeider在O'Reilly的InsideRIA站点上发表了一篇精彩的文章,该文章就如何加快Flex应用的启动速度提出了很多建议,以帮助用户减少看见讨厌的"Loading"对话框的出现时间。他深入探讨了问题的不同方面,并对每种技术的优势和劣势进行了评判。Heider还谈到了一个"实验性"的条款--"使用流",这是他在讨论DirkEismann的帖子(BuildingmonolithicFlexSWFsthatstillstartupquickly. ")时谈及的。Eismann提出一项技术以利用FlashPlayer中的多个frames以在部分应用中达到流的目的。查看所有的帖子以更多地了解该技术及关于加快Flex启动速度的建议。
分享到:
相关推荐
学习了Flex,主要是被它的炫丽的外表所吸引,但用起来,性能却是很大问题,这里有教你性能上的调优
这个文档是关于flex怎么优化的,因为flex对机器的要求比较高,所以在开发项目的时候会想到怎样优化,而这个文档就提供了具体的方法。
FLEX内存释放优化原则,内存泄露解决方法,内存泄露情况
flex builder 优化
flex优化全集flex优化全集flex优化全集flex优化全集flex优化全集
用于防止FLEX编程过程中出现内存无法释放,导致黑屏模糊等现象!
flex编译优化方法,以及Flex工程编译慢的优化方案
基于flex性能测试的一些简单流程描述和测试方法
公司内部资料:遍寻网络资源和相关书籍,历经磨难(网上说的好多都不靠谱),经过自己的理解和实践,总结出来一套可行方案,以供各位Flex开发爱好者们参考交流
Flex框架的基本原理.docx Flex框架的基本原理.docx
可以实现flex布局的基本功能,flex的基本布局模板
Flex 性能简介 pdf 网络上收集的 希望对大家有帮助 初次上传多多关照
老外写的Flex优化指南,内容很精彩,不容错过
专家系统的基本元素Flex System 优化设计
Flex性能,内存管理和对象缓存,玩Flex的朋友可以看看。
Flex 内存 技巧 整理
实现flex布局的基本功能,flex的基本布局模板.zip
flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图...
随着Flex越来越多的被人们所熟知,越来越多的互联网也开始了RIA应用。
flex 属性值基本用法