flex中使用链接报告优化Module大小的测试

最近使用PuerMVC和Module机制构建了一个界面和操作类似WINDOW7的系统框架,将flex的module好好研究了一番,关于module的性能优化和开发中相关注意事项就不多说了,我博客里面有2篇文章讲解非常详细了,这次主要说一说module体积的相关情况。

一个应用程序包含多个module,首先看看最简单的测试结果,我拿2个module进行测试,这两个module使用到了第三方组件MDIWindows和Datagrid,Tree等flex组件。

1.debug编译,模块编译不使用链接报告优化,结果如下
应用程序主swf文件大小:450KB 模块A:250KB,模块B:240KB

2.debug编译,模块编译使用链接报告优化,结果如下
应用程序主swf文件大小:670KB 模块A:475KB,模块B:467KB

3.release编译,模块编译不使用链接报告优化,结果如下
应用程序主swf文件大小:300KB 模块A:160KB,模块B:150KB

4.release编译,模块编译使用链接报告优化,结果如下
应用程序主swf文件大小:440KB 模块A:35KB,模块B:30KB

首先使用链接报告优化简单module体积,将主应用和模块都使用的资源或者各个module公用的资源编译到主应用swf,通过链接报告来编译模块swf,这样模块编译时将主应用已经编译的资源不再编译,从而减少了module的大小,加快了模块的加载速度。

例如A,B两个模块和主应用都用到了Music类,则使用链接报告优化后A,B连个模块则不将Music类编译进自己的模块。
例如A,B连个模块都使用到了Player类,而主应用没有适用到Player类,则主应用SWF中不包含Player类的信息,A,B模块的SWF中都包含Player类的信息,因此在开发中为了减少模块大小,将各个模块公用而主应用不使用的资源,如Player类引入到主应用中,比如在Application的script标签中使用下面的代码

import a.b.c.Player;Player;

或者仅仅定义一个Player类型的变量

import a.b.c.Player;

private var player:Player ;


这些是链接报告优化模块大小的相关知识。但是通过上面的数据看出情况并非如此,这是因为debug环境下编译的文件包含各种调试信息,编译出来的swf是用于开发人员开发调试使用,真正的链接报告优化是针对release编译结果来说的,可以看到在主应用中将A.B模块公用的代码应用到主应用中的时候,主应用增加了140KB,而A.B模块分别减少了130KB和120KB。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值