`

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项目之间共享代码... ...
  
  
分享到:
评论

相关推荐

    Flex之模块化

    本主题聚焦于"Flex之模块化",这主要涉及到使用Adobe Flex框架进行模块化应用程序的设计和构建。 Flex是一个用于创建富互联网应用程序(RIA)的开源框架,它基于ActionScript编程语言和Flash Player或Adobe AIR运行...

    Flex 模块化应用程序开发

    ### Flex 模块化应用程序开发 模块化设计在软件工程领域有着重要的意义,尤其是在像Flex这样的框架中。Flex是一款由Adobe公司开发的开源框架,用于构建高性能、具有丰富交互性的Web应用程序。通过采用模块化的开发...

    flex 模块化modules源码例子

    Flex模块化开发是一种高效、可扩展的软件架构方式,它允许...通过深入学习和实践“flex 模块化 modules 源码”,开发者可以掌握如何有效地利用Flex框架进行模块化开发,从而创建更加灵活、可扩展的富互联网应用程序。

    Flex模块化开发实例

    Flex模块化开发是一种高效构建大型复杂应用的策略,它允许我们将应用程序分解为多个独立的、可重用的组件或模块,以提高代码的可维护性和可扩展性。在这个实例中,我们将深入探讨Flex模块化开发的关键概念和技术。 ...

    flex 模块化 modules文档

    ### Flex 模块化 Modules 文档 #### 模块化应用程序概述 在Flex框架中,模块化设计是一种非常重要的开发模式,它允许开发者将大型应用分解为多个独立的小型组件,这些组件可以在需要时动态加载到主应用中。通过...

    eclipse项目中同时开发j2ee模块和flex客户端模块

    在Eclipse环境中,同时开发J2EE模块和Flex客户端模块是一项常见的任务,特别是在构建富互联网应用程序(Rich Internet Applications, RIA)时。这样的组合允许后端服务器处理业务逻辑和数据管理,而前端Flex客户端则...

    Flex 基于Module模块的开发资料完整版

    Flex 基于 Module 模块的...在实际开发中,运用 Flex 的模块化开发方式,可以构建复杂且可扩展的用户界面,同时优化应用程序的性能和维护性。通过合理地组织模块,可以确保代码结构清晰,便于团队协作和项目长期维护。

    Flex4基于FluorineFx模块化系统框架

    在“Flex4基于FluorineFx模块化系统框架”中,开发者利用最新版本的Visual Studio 2010作为.NET开发环境,同时使用FlashBuilder 4.5作为Flex应用程序的构建工具。这两个工具的结合使得前后端开发无缝对接,提高了...

    flex 代码格式化

    Flex是一款强大的开源SDK,用于构建富互联网应用程序(RIA),它允许开发者使用MXML和ActionScript来创建交互式、响应式的Web应用。在编写Flex代码时,保持代码的整洁和一致性至关重要,因为这不仅有助于提高代码的...

    Flex Module间通信

    在大型项目中,模块化设计有助于代码组织和管理,提高代码复用性,同时降低复杂度。本示例将深入讲解如何在Flex中实现模块间的通信。 首先,了解Flex模块(Module)。在Flex中,一个模块是一个可以独立编译和加载的...

    Adobe Flex3 程序设计指南 源代码

    7. **模块化开发**:Flex3支持模块化,可以将大型应用拆分为可重用的组件。源代码可能会包含如何组织和加载模块的示例。 8. **错误处理和调试**:源代码还将展示如何进行有效的错误处理和调试技巧,这对于任何...

    FLEX年会抽奖程序

    它基于ActionScript编程语言,使用MXML进行界面设计,提供强大的图形渲染和数据绑定功能,使得开发者能够创建交互性强、视觉效果丰富的应用程序。在这款FLEX年会抽奖程序中,我们可以看到FLEX的强大之处在于它能够...

    构建全栈式Flex、BlazeDS和Spring集成解决方案–第一部分 创建Maven Flex模块

    构建全栈式Flex、BlazeDS和Spring集成解决方案:创建Maven Flex模块 在富互联网应用(RIA)领域,Adobe Flex以其丰富的用户界面和高性能的数据处理能力,成为了开发者们的首选工具之一。随着技术的不断发展,将Flex...

    通过SmartInvoke运用java与flex轻松构建cs程序.doc

    这种方式不仅解决了Flex应用对本地资源访问的限制问题,而且还促进了代码的模块化设计,提高了开发效率。对于需要构建功能丰富且具有良好用户体验的应用程序开发者而言,这是一种非常实用的选择。

    flex程序设计基础教材

    10. **Flex应用程序结构**:理解模块化、分层的架构模式,如MVC(Model-View-Controller),可以帮助创建可维护、可扩展的Flex应用。 通过深入学习这些概念并实践项目,初学者能够逐步掌握Flex 3程序设计,从而在...

    Flex3学习指南-是初学者学习Flex必备资料2

    9. **Flex模块化开发**: Flex支持模块化,允许将大型应用程序分解为可独立加载的单元,从而改善加载时间和性能。 10. **测试和调试**: 使用Flex Builder的内置工具进行单元测试和调试,确保代码的质量和功能的正确...

    Flex 开发学习笔记6.1 - 创建 Flex Library Project

    了解和掌握创建Flex Library Project对于Flex开发者来说非常重要,因为它促进了代码的模块化和组织,使得大型项目更易于管理和维护。同时,通过库项目,开发者可以构建自己的组件库,提高开发速度并保持代码一致性。...

    Flex3与flex4的区别

    Spark组件被设计为更加模块化,允许开发者更容易地自定义组件的外观和行为。相比之下,Flex3中的组件,被称为MX组件,虽然功能强大,但在自定义方面存在局限性。 ### 布局管理 在Flex4中,布局管理得到了显著增强...

Global site tag (gtag.js) - Google Analytics