初识PureMVC - 第一部分

本教程适合PureMVC的初学者,通过本教程可以对PureMVC有大概的认识。

先看官方对PureMVC的大致介绍:

  1. PureMVC框架的目标很明确,即把程序分为低耦合的三层:Model、View和Controller。
  2. 降低模块间的耦合性,各模块如何结合在一起工作对于创建易扩展,易维护的应用程序是非常重要的。
  3. 在PureMVC实现的经典MVC元设计模式中,这三部分由三个单例模式类管理,分别是Model、View和Controller。三者合称为核心层或核心角色。
  4. PureMVC中还有另外一个单例模式类——Façade,Façade提供了与核心层通信的唯一接口,以简化开发复杂度。

来看一下PureMVC的UML图:

相比较Caringorm,它单独提出了一个Facede的概念,含义就是置于最前端的类,用于包含和控制Model,View,Controller(即MVC)。

以下是PureMVC中几个重要组成部分以及相互关系:

Model 与 Proxy

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

View 与 Mediator

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

Controller 与 Command

Controller保存所有Command的映射。Command类是无状态的,只在需要时才被创建。

Façade 与 Core

Façade类应用单例模式,它负责初始化核心层(Model,View和Controller),并能访问它们的Public方法。

这样,在实际的应用中,你只需继承Façade类创建一个具体的Façade类就可以实现整个MVC模式,并不需要在代码中导入编写Model,View和Controller类。Proxy、Mediator和Command就可以通过创建的Façade类来相互访问通信。

在之后的部分中,我们将通过一个简单的实例来认识和分析PureMVC。

riadevID: 
您给予的分值: None 平均分: 8.6 ( 14 票)

发表新评论

  • 网页地址和电子邮件地址将会被自动转换为链接。
  • 行和段被自动切分。
  • 您可以使用下面的标签来高亮显示您的评论内容: <code>, <blockcode>. 可以使用"[foo]".旁边显示标签样式 "<foo>" PHP代码可以用这样的区块来包含<?php ... ?> or <% ... %>

更多格式化选项信息

验证区域
系统验证:请回答下面的问题