一、PureMVC的优势
1. 学习和使用优势
* PureMVC的代码规模适中。
* PureMVC的一些类可以开箱即用,不需扩展。
* PureMVC允许用实现继承和接口继承进行扩展。
* PureMVC内置发布-订阅式的通知机制。
* 支持一些经典的设计模式,易于理解。
2. 对应用开发的影响力
* 把所有代码分离成模型-视图-控制器三个层次。
* 方便把整体框架构造成为一种稳定的状态。
* 弥补快速开发所缺少的扩展性和可维护性。
* 明确各个类的角色、职责和协作。
* 使新旧框架组件可以共存。
* 强调可重用。
* 特别适合网络通信中的客户端模型。
3. 参考自PureMVC官方文档的pdf
http://puremvc.org/content/view/98/189/
二、PureMVC的内部角色
* 表面,用于缓存MVC管理器,提供全局的单实例方法。
* 模型,用于缓存带名称的代理,是无图形界面的带状态组件管理器。
* 视图,用于缓存中介,是有图形界面和交互动作的带状态组件管理器。
* 控制器,用于缓存带名称映射的命令,是无图形界面的无状态组件管理器。
* 代理,用于封装和访问本地和远程的长生命业务数据,或者进行远程调用。
* 中介,用于组装用户界面。
* 命令,使用名称指定要传递的短生命通知对象。
* 通知,底层的命令实现。
说明:
1. 大部分开发者都习惯把这些角色集中在同一个类中。
例如,耦合视图和它私有的模型有助于代码修改。
如果使用PureMVC可能会让这些代码失去私密性和关联性,
不方便调试和修改。
2. 命令和中介之间存在多对多映射关系。
3. 通知可以用命令、中介和代理发送,但一般只能用中介来接收。
三、PureMVC在Flex应用开发中的作用
1. 客户端和服务器通信:
中介通过值对象和MXML界面绑定,而代理通过值对象与服务器程序绑定,
中介和代理被注册到表面对象,表面对象通过用命令协调中介和代理。
所以,MXML界面和服务器程序被间接连通。
2. 动作监听和界面修改:
MXML的用户动作监听句柄中,通常用单实例的表面发送通知给中介。
中介在handleNotification中接收到MXML、其它中介、代理发送过来的通知后,
改变MXML绑定的值对象,从而修改界面。
3. 执行业务逻辑:
中介在接收到通知后需要根据需求选择处理方案。
* 如果通知的处理需要异步的远程处理,例如关键的业务数据处理,
一般是从全局的表面中取出相关的代理对象,然后执行远程调用。
执行远程调用后,用通知重新唤醒中介,把结果反映到用户界面上。
* 如果通知的处理可以在本地快速完成,
则直接在handleNotification中执行业务逻辑,
完成后修改MXML绑定的值对象,把结果反映到用户界面上。
4. 参考例子:
见http://www.dehats.com/drupal/?q=node/26
相关推荐
在阅读《PureMVC学习笔记.docx》时,你可能会深入了解每个组件的工作原理,以及如何在实践中应用它们。这份文档可能包含了示例代码、最佳实践和常见问题解答,帮助你更好地理解和掌握PureMVC框架。通过学习和实践,...
PureMVC 的核心理念是将应用程序分为三个主要部分:模型(Model)负责处理数据,视图(View)负责用户界面的展示,而控制器(Controller)则作为两者之间的桥梁,处理用户交互和业务逻辑。 在提供的压缩包文件名 ...
标题中的“初探PureMVC:使用PHP+MySQL+Flex结合PureMVC框架做了个Flex留言本”揭示了本文将探讨如何使用PureMVC框架,结合PHP后端和MySQL数据库,构建一个基于Flex的前端留言本应用。PureMVC是一个轻量级、可扩展的...
PureMVC是一个轻量级的、跨平台的MVC(模型-视图-控制器)框架,主要用于构建可维护性和扩展性高的应用。本教程将基于PureMVC框架讲解如何实现一个经典的“贪吃蛇”游戏,以此来深入理解PureMVC的核心概念和工作流程...
标题中的“PureMVC中文教程”表明这是一份关于PureMVC框架的中文学习资料,主要面向想要理解和掌握这一框架的开发者。PureMVC是一个开源的、轻量级的、跨平台的MVC(Model-View-Controller)设计模式框架,它提供了...
PureMVC是一种遵循模型-视图-控制器(MVC)设计模式的框架,它强调程序的三大核心部分:数据模型(Model)、视图(View)、和控制器(Controller)的分离,以便于多个视图可以共享同一数据模型,而当数据发生变化时...
PureMVC的核心概念包括三个主要角色:模型(Model)、视图(View)和控制器(Controller)。在这个登录实例中,我们将看到如何运用这些概念来构建一个完整的用户登录流程。 1. **模型(Model)**:在登录场景中,...
通过这个资料包,开发者不仅可以获取到PureMVC的实现库,还可以深入学习和理解PureMVC的设计原则和使用方法,从而提升软件开发的效率和质量。无论是初学者还是经验丰富的开发者,都能从中受益,提升自己的编程技能。
《深入理解PureMVC:基于五子棋游戏的源码分析》 PureMVC是一个流行的、开源的、轻量级的、跨平台的MVC框架,它为开发人员提供了一种结构化的编程模式,用于组织和管理应用程序的业务逻辑、用户界面和数据。在这个...
学习PureMVC不仅能够提升代码的组织性,还有助于提高开发效率,特别是对于大型项目,其优势更为明显。通过案例实践,你可以更好地理解和应用PureMVC框架,从而构建出高效、可维护的富客户端应用。
在学习这个实例时,你需要了解每个类的作用,查看它们是如何相互协作的,理解PureMvc的核心概念。这将有助于你掌握PureMvc框架,从而更好地构建和维护复杂的Adobe AIR应用程序。记住,实践是最好的老师,尝试修改和...
1. MVC模式:MVC是一种软件设计模式,将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。模型负责处理数据,视图负责显示数据,而控制器作为模型和视图之间的桥梁,协调它们的交互。...
纯MVC(PureMVC)是一个轻量级的框架,用于构建基于模型-视图-控制器(Model-View-Controller)设计模式的应用程序。在AS3.0版本中,PureMVC提供了强大的组织和管理代码的方式,使得开发者可以更有效地进行多层应用...
这个是一个根据AS3(ActionScript 3) pureMVC而转换过来的lua pureMVC。所有的接口完全跟AS3版本一致。 若是想使用,可以直接查看网上的pureMVC 文档,我并未对任何一个函数改名或者更换参数位置。 注意,这个PureMVC...
PureMVC是一个开源的、轻量级的框架,专门用于构建多层应用程序。它采用Model-View-Controller(MVC)设计模式,并提供了一种在ActionScript 3中实现这一模式的方法。标题提到的"puremvc最新版本2.0.4源码",意味着...
10. **学习曲线**:PureMVC的简单API和清晰的架构使得开发者能够快速上手,同时也有助于团队成员间的协作和代码审查。 在"puremvc-csharp-standard-framework-master"这个压缩包中,你将找到PureMVC C#标准版的源...
在PureMVC中,这三者都由特定的类来实现: 1. **模型(Model)**:负责处理应用程序的数据和业务逻辑。在PureMVC中,模型通过`Proxy`类来实现,代理负责存储和管理数据,同时也处理与数据相关的业务逻辑。 2. **...
学习和使用PureMVC,开发者可以更好地理解和实践MVC模式,提升Unity项目的专业性和可维护性。同时,由于PureMVC具有跨平台的特性,这意味着你在Unity中的代码可以应用于其他支持PureMVC的平台,如Flash、Java等。
在PureMVC中,MVC的三个主要组成部分被抽象为类: 1. **Model**(模型):负责存储和管理应用程序的数据。在PureMVC中,模型由`Proxy`类来实现,它提供了一个注册和访问数据的中央接口。 2. **View**(视图):...
4. `libs` 文件夹很可能包含了PureMVC库和其他依赖的第三方库,这些都是实例运行所必需的。 5. `html-template` 文件夹可能包含了与HTML模板相关的文件,如果这个实例涉及到富客户端应用,这些模板可能用于与服务器...