首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

Flex创设模块化的程序

2012-11-25 
Flex创建模块化的程序学习动机:学习如何在程序增大时划分程序模块及维护程序1、介绍Flex模块化程序Flex程序

Flex创建模块化的程序
   学习动机:学习如何在程序增大时划分程序模块及维护程序
1、介绍Flex模块化程序
   Flex程序默认情况下,mxml与as都会被编译进SWF文件。优点:可以立即使用而不需下载;缺点:随着程序变复杂其大小与下载时间都会持续增加。此外,即使用户从来不使用程序的某个功能,它也要下载实现这个功能的类文件。
   Flex模块加载器在运行时加载和卸载预先定义的模块,这样既可以使用户在开始时下载比较小的文件,又可以划分程序中独立的逻辑部分。

2、 使用Flex模块
    新建MXML Module项,在Optimize for application中选择主页面。
    b)使用Module类
    <mx:Module xmlns:mx="xxxx" .../>
   c)使用ModuleLoader动态加载模块,如:
    <s:Group>
      <mx:ModuleLoader id="xxx" width="yy" .../>
    </s:Group>
    可以在ModuleLoader标签里添加ready事件的监听器,调用事件函数xxx并传入事件对象。只要模块被成功调用并且已准备好,那么分发ready事件,yyy模块实例可以由ModuleLoader的child属性引用。
     private function handleModuleReady(event:ModuleEvent):void{
        yyyModule(ModuleLoader的id.child).zzz = dddd;
    }

3、 理解RSL(Runtime Shared Libraries,运行时共享库)
    RSL可以将多个程序共享的资源提取出来,提出出来的部分放到单独的库中,此外RSL可以在客户端进行缓存,因此提取出来的部分只需要下载一次。默认情况下,用FlexBuilder编译的每个程序都是独立的,每个程序都包含了所需类的一个副本。
    注意: RSL可以用来减少几个程序的总大小而不是单个程序的大小。

4、 理解链接器
   只要Flex编译器完成了从源代码到字节码的转换之后,链接器就会接管后面的工作。链接器是负责把所有相关的字节码汇编成一个可以执行的SWF。
   如果选择将代码提取到RSL,那么会因为很多原因而降低一部分效率,最主要的问题在于,为了删除程序的重复代码反而链接了大量的类。

5、 使用Flex框架RSL缓存
   当用户访问网站上的Flex程序时,Flash Player首先检查它的缓存是否存在框架RSL的正确版本,如果...否则...
   注意: 用户第一次访问FLex程序时会比较慢,随后访问速度就比较快了。

6、使用有签名的RSL与没有签名的RSL
   没有签名的RSL保存在浏览器的缓存中,且起只能在相同的域中使用,扩展名是.swf; 而签名的RSL是在Flash Player中缓存,且可以在统统域之间使用而没有限制,扩展名是.swz。

7、 创建库项目
    创建库以便在不同的Flex项目之间共享代码... ...
  
  

热点排行