PureMVC框架介绍


PureMVC是基于MVC模式(模型、视图和控制器)建立的一个轻量级应用框架。


在PureMVC实现的经典MVC设计模式中,模型、视图和控制这三部分由三个单例模式类管理,分别是Model、View和Controller。三者合称为核心层或核心角色。


PureMVC中还有另外一个单例模式类——Facade。 Facade提供了与核心层通信的唯一接口,以简化开发复杂度。


Model 与 Proxy
Model保存对Proxy对象的引用。Proxy负责操作数据模型,与远程服务通信存取数据。这样保证了Model层的可移植性。


View 与 Mediator
View保存对Mediator对象的引用。由Mediator对象来操作具体的视图组件(View Component,例如Flex的DataGrid组件),包括:添加事件监听器,发送或接收Notification,直接改变视图组件的状态。这样做实现了把视图和控制它的逻辑分离开来。


Controller 与 Command
Controller保存所有Command的映射。Command类是无状态的,只在需要时才被创建。Command可以获取Proxy对象并与之交互,发送Notification,执行其他的Command。经常用于复杂的或系统范围的操作,如应用程序的“启动”和“关闭”。应用程序的业务逻辑应该在这里实现。


Facade 与 Core
Facade类负责初始化核心层(Model,View和Controller),并能访问它们的Public方法。
这样,在实际的应用中,只需继承Facade类创建一个具体的Facade类就可以实现整个MVC模式,并不需要在代码中导入编写Model,View和Controller类。Proxy、Mediator和Command就可以通过创建的Facade类来相互访问通信。


Observer 与 Notification
PureMVC的通信是使用观察者模式以一种松耦合的方式来实现的。


Notification可以被用来触发Command的执行
Facade保存了Command与Notification之间的映射。当Notification(通知)被发出时,对应的Command(命令)就会自动地由Controller执行。Command实现复杂的交互,降低View和Model之间的耦合性。


Mediator发送、声明、接收Notification
当用View注册Mediator时,Mediator的listNotifications方法会被调用,以数组形式返回该Mediator对象所关心的所有Notification。之后,当系统其它角色发出同名的Notification(通知)时,关心这个通知的Mediator都会调用handleNotification方法并将Notification以参数传递到方法。


Proxy发送,但不接收Notification
在很多场合下Proxy需要发送Notification(通知),比如:Proxy从远程服务接收到数据时,发送Notification告诉系统;或当Proxy的数据被更新时,发送Notification告诉系统。
如果让Proxy也侦听Notification(通知)会导致它和View(视图)层、Controller(控制)层的耦合度太高。View和Controller必须监听Proxy发送的Notification,因为它们的职责是通过可视化的界面使用户能与Proxy持有的数据交互。
不过对View层和Controller层的改变不应该影响到Model层。


PureMVC与设计模式之二. Facade模式与Singleton模式
http://blog.csdn.net/cpfeed/article/details/7391048


PureMVC源码分析
http://www.cnblogs.com/tudas/archive/2012/09/16/learning-in-puremvc.html


PureMVC源码
puremvc-java-multicore-framework
https://codeload.github.com/nphyez/puremvc-java-multicore-framework/zip/1.0.8
puremvc-as3-standard-framework
https://github.com/PureMVC/puremvc-as3-standard-framework/


PureMVC初探---内部的运转
http://www.cnblogs.com/zhengye/articles/2068405.html


PureMVC目前支持两个版本框架:标准和多核。



PureMVC有一个名为Mediator的构造,顾名思义,它就是Mediator模式的实现,充当视图API和程序其余部分的API之间的中介。这是PureMVC实现MVC架构视图部分的关键构造。引入它是为了减少应用和视图之间的依赖,从而降低整个系统的耦合程度。



Mediator 中介模式

Facade n. 正面;表面;外观



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值