`
shlei
  • 浏览: 282946 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

加快flex速度的5个方法

    博客分类:
  • FLEX
阅读更多
从外部加载媒体(Media)
Heider提到了一个常用的Flex最佳实践——限制嵌入到应用/SWF文件中的媒体的数量,如图像、影片及mp3等资源都可以从外部的SWF文件加载。

Flex框架可以直接将图片、mp3及字体等资源编译到SWF中。当你想让最终用户获得全部资源时,这种方式确实能派上用场,但是这会导致你的应用长时间停留在“Loading”阶段。

在嵌入式字体中限制字符集
Heider建议在嵌入式字体中限制字符集以降低SWF文件的总下载时间:

当你在Flex中嵌入一种字体时,你就会获得该字体的全部字符的支持。尽管这可能是你想要的,但你确信你需要全部字符么?例如,在一个只面向英文的应用中,你确信你真的想花时间下载中文字符数据么?

缓存框架
        Heider回顾了Flex 3 support for runtime-shared-libraries (RSL)这篇文章:

从Flex 3开始,你可以将Adobe签名的框架——RSLs缓存到Flash Player的cache中。这有两个好处。首先,缓存在Flash Player cache中的签名的框架RSLs可由所有配置好的Flex应用共享。换句话说,如果某人的应用已经下载了500k的签名的框架RSL,并且该RSL仍旧 在Flash Player cache中,那么你的应用就可以使用缓存下来的RSL。其次,即使某人清空了其浏览器缓存,对Flash Player cache也没有任何影响。

考虑模块化
Heider谈到了将Flex应用划分成模块的好处:

减少字体加载时间的另一种方式就是将你的Flex应用划分成模块。使用模块的一个好处在于当加载和卸载模块时你能完全操控它。

之 所以要划分成模块的最后一个原因是他们更快,而且我能即时加载它们。换句话说,在启动时唯一需要加载的模块就是 Step1.swf模块。因此,在使用模块的情况下,最终用户节省了启动时间,但是当他从一个模块切换到另一个模块时却需要花更多时间,因为每个模块都需 要以JIT形式加载。在我的应用中,只有当用户首次在steps 1-5之间切换时需要花更多时间。

推迟实例化
        Heider围绕着Flex组件的“creationPolicy”属性及何时实例化应用的不同部分给出了很多建议。

如果你想减少从数据下载到用户真正可以使用的总时间,当务之急就是推迟实例化。这项技术背后的理念就是直到应用真正使用的时候才在内存中创建对象。

尽管推迟实例化技术会在应用的整个使用过程中导致少许——通常不那么明显——的延迟,但与长时间的启动延迟相比,它还是可接受的。推迟实例化的另一个好处在于内存使用的优化。

转自http://vipoyb.iteye.com/blog/405603
分享到:
评论

相关推荐

    学习flex基础知识

    flex基础知识很重要,这实例可以加快学习flex的速度

    Flex数据传输与交互

    Flex 是一个高效、免费的开源框架,可用于构建具有表现力的 Web 应用程序,这些应用程序利用 Adobe Flash Player和 Adobe AIR, 运行时跨浏览器、桌面和操作系统实现一致的部署。虽然只能使用 Flex 框架构建 Flex ...

    flex制作贪吃蛇游戏

    完全有flex实现的贪吃蛇游戏,游戏中的小蛇可以通过shift 来实现加速,每吃一个食物速度会加快。该游戏界面比较简陋,适合有一定基础的flex开发人员,也可以自行完善。

    加快 FlashBuilder4 的编译速度 修改编译类文件

    下载-替换到{flex-sdk-4.x-home}/lib,换了之后至少flashbuilder不会有事儿没事儿罢*工了

    使用ADOBE FLASH BUILDER 4.5

    用于加快应用程序开发速度的功能 用于运行和调试项目的功能 Flash Builder 版本 Flash Builder 配置 Adobe Community Help Client (CHC) 第 2 章: Flash Builder 入门 Flash Builder 工作台 Flash Builder ...

    RIA 应用程式开发

    大型金融服务机构使用 RIA 来强化其对外品牌形象, 对内则能与任务关键性资料进一步互动, 加快企业决策速度。线上零售商可降低在结帐过程中的购物车弃买率, 效果达到 50% 之多。开发人员则能将纯熟的线上地图服务与...

    优化ADOBE_FLASH_平台的性能

    • 加快呈现速度 • 优化网络交互 • 使用音频和视频 • 优化 SQL 数据库性能 • 基准测试和部署应用程序 此文档重点介绍针对移动浏览器中运行的应用程序的最佳做法。不过,大多数这些优化都适用于所有平台(包括...

    luya-kickstarter-bootstrap4:LUYA样板程序可以通过Bootstrap 4启动项目

    LUYA Bootstrap 4 Kickstarter应用程序 注意:从Bootstrap 4开始,网格完全用FLEX编写。 检查以确定是否要对项目使用Bootstrap 4。 安装 composer create-project luyadev/luya-...为了加快本地开发速度,您可以在con

    Corona_Clone:交互式网页练习(BBC Corona_Clone)

    压缩所有图像以加快加载速度 将图像设置为即使发生滚动也要固定 使用CSS粘性 在Chrome或移动设备上正常运行。 在IE中不起作用。 使用JS实现滚动事件 当文本在一定范围内时,使新图像出现 当文本进入一定范围时,...

    asp.net知识库

    常用编码工具类,支持base64,md5,des,crc32 也谈谈技术面试 在C#里把ArrayList转换为Array 或 把Array转换为ArrayList C# 2.0 在.NET 2.0中,让你的组件也可以绑定 .NET20 一种简单的窗口控件UI状态控制方法 翻译MSDN...

Global site tag (gtag.js) - Google Analytics