pure MVC框架目标与好处
框架一瞥
PureMVC是一个为创建基于经典MVC元设计模式应用的轻量级框架。
此框架是开源且免费的,已经被AS2,AS3,Java,C#以及其他流行语言所实现。这也允许在多样的平台上开发,包括:
l 移动环境:FlashLite,.Net 集成框架,J2ME
l 服务器环境:ColdFusion,J2EE,PHP,Python
l 浏览器环境:Flash/Flex,JavaFX,Silverlight
l 桌面环境:.Net,AIR,Flash,J2SE
目标:
PureMVC框架主要目标很简单:就是帮助你将应用代码分为三个分离的部分:模型,视图,控制。
为较好的实现此目标并保证框架稳定是惟一的指导动力。
通过提供功能和演示来说明框架的整体良好实用性来扩展框架的使用以及功能都是其次的。
其他促使起初用AS3来实现的目标是:
l 简单并适合框架区域
l 降低应用层次混杂,类功能,责任以及协作性。
l 平衡了规模性和可维护性与速度的关系。
l 提供了清晰丰富的文档。
l 避免平台依赖。
l 为开发者屏蔽了复杂度。
l 设计良好,不需要随着新特性以及重构等更新和维护。
好处:
应用框架的选择很大程度上影响你的架构,继而通过影响未来的维护而增加整体的成本。明智的选择吧。
用PureMVC实现应用带来如下好处:
l 基于模式
l 被很多经久的设计模式支持,可以在任何面向对象编程环境中实现。
l 容易理解。
l 有用的实现类
l 框架可以在外用最小的要求实现。
l Facade类提供唯一核心应用间的协作通信。
松耦合架构
l 支持可视对象,模型数据以及服务的重用。
l 兼容观察者模式通信。
l 客户端层次代码独立性好。
l 面向接口编程
l 框架通过继承或者实现接口来支持扩展性。
l 所有框架类都是用接口定义。
l 所有类都考虑过扩展:保护方法,变量和接口参数等都深思熟虑。
l 框架通过将支持的模式打包到分离的包里来为提供以后的扩展,并不会对模式包进行依赖。
文档良好
l 源代码容易获取。
l 完整的API文档。
l 概念性好,UML类图描述。
l 所有类及方法都进行过单元测试。
l 大量演示来展示基本使用流程。
l 创建者归档了《原子实现和最佳实践》此文。
l 开发的专业课件被成千上万的学生测试过。
<ignore_js_op>
PureMVC_Framework_Goals_and_Benefits.pdf (146.98 KB, 下载次数: 26)
原文链接:http://puremvc.org/component/option,com_wrapper/Itemid,35/
pure MVC框架目标与好处的更多相关文章
- 【Spring】Spring系列7之Spring整合MVC框架
7.Spring整合MVC框架 7.1.web环境中使用Spring 7.2.整合MVC框架 目标:使用Spring管理MVC的Action.Controller 最佳实践参考:http://www. ...
- 产品前端重构(TypeScript、MVC框架设计)
最近两周完成了对公司某一产品的前端重构,本文记录重构的主要思路及相关的设计内容. 公司期望把某一管理类信息系统从项目代码中抽取.重构为一个可复用的产品.该系统的前端是基于 ExtJs 5 进行构造的, ...
- 设计 REST 风格的 MVC 框架
http://www.ibm.com/developerworks/cn/java/j-lo-restmvc/ 传统的 JavaEE MVC 框架如 Struts 等都是基于 Action 设计的后缀 ...
- 通过Struts了解MVC框架,兼说如何在面试中利用Struts证明自己
虽然目前Struts MVC框架不怎么用了,但它确是个能帮助大家很好地入门Web MVC框架,而且,一些历史项目可能还用Struts,反正技多不压身,大家如果能在面试中通过项目证明自己Struts这块 ...
- 第5章——使用 Razor(MVC框架视图引擎)
Razor 是MVC框架视图引擎的名称. 本章提供 Razor 语法的快速教程,以使你能够识别 Razor 表达式. 本章不打算提供 Razor 的完整参考,而将其视为一个语法速成教程.在本书的后续内 ...
- Spring MVC 简述:从MVC框架普遍关注的问题说起
任何一个完备的MVC框架都需要解决Web开发过程中的一些共性的问题,比如请求的收集与分发.数据前后台流转与转换,当前最流行的SpringMVC和Struts2也不例外.本文首先概述MVC模式的分层思想 ...
- Spring MVC -- MVC设计模式(演示4个基于MVC框架的案例)
对于简单的Java Web项目,我们的项目仅仅包含几个jsp页面,由于项目比较小,我们通常可以通过链接方式进行jsp页面间的跳转. 但是如果是一个中型或者大型的项目,上面那种方式就会带来许多维护困难, ...
- 请求如何进入ASP.NET MVC框架
一.前言 对于WebForm开发,请求通常是一个以.aspx结尾的url,对应一个物理文件,从代码的角度来说它其实是一个控件(Page).而在MVC中,一个请求对应的是一个Controller里的Ac ...
- Spring MVC 框架的架包分析,功能作用,优点
由于刚搭建完一个MVC框架,决定分享一下我搭建过程中学习到的一些东西.我觉得不管你是个初级程序员还是高级程序员抑或是软件架构师,在学习和了解一个框架的时候,首先都应该知道的是这个框架的原理和与其有关j ...
随机推荐
- ASP.NET 系列:RBAC权限设计
权限系统的组成通常包括RBAC模型.权限验证.权限管理以及界面访问控制.现有的一些权限系统分析通常存在以下问题: (1)没有权限的设计思路 认为所有系统都可以使用一套基于Table设计的权限系统.事实 ...
- Siege——多线程编程最佳实例
在英语中,“Siege”意为围攻.包围.同时Siege也是一款使用纯C语言编写的开源WEB压测工具,适合在GNU/Linux上运行,并且具有较强的可移植性.之所以说它是多线程编程的最佳实例,主要原因是 ...
- [BZOJ 1266][AHOI2006]上学路线(最短路+最小割)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1266 分析: 很简单的题目,容易想到就是把所有的最短路径挑出来,然后在这个图里跑最小割 ...
- C# 使用XML序列化对象(一)
在System.Xml.Serialization命名空间中提供了XML序列化类XmlSerializer用于将对象序列化为XML. 下面看一个最简单的例子: public class A { pub ...
- jsp+oracle实现数据库内容以表格形式在前台显示(包含分页)
jsp+oracle实现数据库内容以表格形式在前台显示(包含分页) 在文件夹内新增list_emp.jsp 代码如下: <%@ page contentType="text/html& ...
- 领域事件DomainEvents
静态类DomainEvents: public static class DomainEvents { [ThreadStatic] private static List<Delegate&g ...
- 【Gym 100947E】Qwerty78 Trip(组合数取模/费马小定理)
从(1,1)到(n,m),每次向右或向下走一步,,不能经过(x,y),求走的方案数取模.可以经过(x,y)则相当于m+n步里面选n步必须向下走,方案数为 C((m−1)+(n−1),n−1) 再考虑其 ...
- linux中防CC攻击两种实现方法(转)
CC攻击就是说攻击者利用服务器或代理服务器指向被攻击的主机,然后模仿DDOS,和伪装方法网站,这种CC主要是用来攻击页面的,导致系统性能用完而主机挂掉了,下面我们来看linux中防CC攻击方法. 什么 ...
- android加载大图片到内存
1)演示效果: 1)代码演示: 布局代码: 权限配置:
- easyui datagrid 通过复选框删除新追加的数据问题
之前写好的功能在保存好数据后再通过复选框删除是没有问题的,可现在想多追加几行,然后选择删除新追加的某几行或一行,通过$('#dg').datagrid('getChecked')方法返回选中行,然而返 ...