国美融资租赁:PureMVC 优缺点

来源:百度文库 编辑:中财网 时间:2024/05/01 01:24:29

    目前主流Flex的框架主要有Cairngorm和PureMVC两种。Cairngorm是adobe自己推广的框架,感觉Cairngorm只能称为“architecture pattern”,基本上只是定义了一个工程分成那几个部分以及每个部分的interface。另外Cairngorm通过Singleton 的ModelLocator来保存数据,有很多副作用,也决定了不适用用组件开发。PureMVC基本上解决了Cairngorm存在的大部分问题。

     PureMVC的优点:

    (1)结合了MVC和MVP框架的优点,实现很彻底。

    (2)基本上可分为Fa?ade、Command、Mediator(components)、Proxy(Value objec)四个部分,各部分耦合度很低,灵活度非常高(这也是个缺点,下面再谈)。

    (3)各部分单元测试容易实施。

    (4)View重用容易实现。

    (5)可用于组件、Module开发。

    (6)Proxy的设计使得扩展和维护比较容易。

 

    PureMVC的缺点:

     (1)灵活度过高,要清晰控制一个事务过程不容易。

               PureMVC自己实现了Observer Pattern,处理过程变成了订阅/发布过程,这样做法使得灵活性非常好,也使得流程混乱不堪。

              它不像早期的Java web 框架webwork(struts)、spring使用集中的XML文件控制流程,也不像敏捷的代表Rails使用契约编程来规范流程。目前只是在   ApplicationFacade中定义事件名常量,流转过程完全不可见。由于ActionScript还在发展过程中,其Reflection能力还比较弱,要实现上述功能还是比较困难。

 

    (2)代码冗余量高

             Mediator、Proxy等继承类的冗余代码是比较多的,但是ActionScript不支持Generics以及Reflection能力弱,使得难以消减代码。

 

   总的来说,PureMVC是不错的框架,待ActionScript语言功能发展后,还有改进的余地。

 

PureMVC   Reference :

(1)  http://puremvc.org/

(2)  PureMVC Explorer

(3)  Popups in Flex using PureMVC

(4) Understanding PureMVC Pipes

(5) A basic PureMVC MultiCore AS3 example using Pipes Utility and Modules

(6) FCG : a Flex Code Generator


(###)