您的位置:首页 > 其它

PureMVC框架知识介绍

2016-10-13 01:39 169 查看
PureMvc中各个层次说明:
1.       Proxy(代理) 相当于经典MVC中的Model.它将代理Model的所有职权。负责维护和操作应用程序的数据模型。Proxy通常情况下会暴露一组公共API供Controller(command)或View(mediator)调用,以获取、修改或更新程序数据。注意Proxy只可以发送通知,不可以也不应该让它接收通知。
 
2.       Mediator(中介) 对应MVC中的View.它接管了View的所有职权,负责数据内容的视图呈现和捕获用户输入。Mediator管理者View Component, Mediator可以监听View Component发出的Event,它通过这些事件监听捕获用户输入。Mediator可以接收或发送通知,以跟Controller(Command)或其他Mediator交流。Mediator用于Model(Proxy)对外暴露的公共API操控Model(Proxy);
 
3.       Command(命令)。它相当于一个指挥部,负责协调调度PureMVC中的Proxy和Mediator以转发通知。Command以接收或发送通知的方式跟View(Mediator)或其他Command通信,用Model(Proxy)暴露的公共API操控Model(Proxy).
 
4.       Façade(经纪人)   在PureMVC中,M、V、C都是被作为单例封装在Façade类中的,他们对外不可见。在使用PureMVC框架的时候,不需要去创建Model、View和Controller,只需要创建一个Façade的单例,它就会自动创建出M、V、C这三个核心模块,并且为他们建立起通信机制。我们只要调用Façade暴露出来的公共方法就可以启动整个程序,所有的消息流转都在Façade内部完成。
 
5.       View Component 是PureMvc框架中真正的可视元素,例如一个影片剪辑或一个按钮等。它通过事件与Mediator交流。通过向外暴露的API供Mediator操作。
 
6.       Data Object  是PureMVC框架中真正的数据,它可以是一个数值对象、一个集合或是一个数据库。它通过Proxy的构造函数传入Proxy,并被一个名为data的属性引用。
 
 
PureMVC的通信并不是采用Flash的EventDispatcher/Event,因为PureMVC可能运行在没有Flash Event和EventDispatcher类的环境中,它的通信是使用观察者模式以一种松耦合的方式来实现的。
 
 
     registerCommand( STARTUP, StartupCommand );是建立Command与Notification之间的映射。
     
     PureMvc采用Notification(通知)的通信机制,该机制并不是Event(事件)机制的替代品。它们的工作方式有本质上的不同。但这两者相互协作可以提高视图组件的可重用性,甚至,如果设计得当,视图组件可以和PureMVC“脱耦”。
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  pureMVC