1. 模块化的定义与原理
1.1 模块化的定义
模块是包含了一个IFlexModuleFactory类工厂的可动态加载的特殊类型的swf,它允许一个程序在运行时加载代码并创建类实例。
1.2 模块化的原理
Flex应用程序是以swf形式发布的。Swf形式的文件分为两种类型,如下表所示:
类型 | 特征 | 特点 |
Application | 最外层容器以<s:Application…>开头 | 可以单独执行 |
Module | 最外层容器以<mx:Module…>开头 | 不可以单独执行,必须被ModuleLoader组件加载后才能执行 |
在完全采用Flex作为客户端技术的web系统中,由上述的Application和Module构成全部界面。
2 模块化的作用
1) Flex模块化可分离应用程序代码到不同的swf文件上以减少加载时间和文件大小。
2) 多界面效果
在Flex技术中,通过模块化实现多界面效果,每个界面对应一个Flex模块。通常需要定义一个Application类型的界面作为主界面,在其上定义子界面的容器(ModuleLoader组件)。然后定义多个Module类型的子界面,在主界面的ModuleLoader组件中,动态加载Module类型的子界面以实现多界面切换。
3 模块化的优点
使用模块化开发有如下优点:
1. 主应用程序开始时不需要马上下载模块,应用程序会根据需求载入和卸载模块。
2. 由于每个模块独立于其他应用程序模块,当需要改变一个模块时,只需要重编译这个模块而不是整个应用程序。