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 ...
随机推荐
- EntityFramework系列:Repository模式与单元测试
1.依赖IRepository接口而不是直接使用EntityFramework 使用IRepository不只是架构上解耦的需要,更重要的意义在于Service的单元测试,Repository模式本身 ...
- [C/C++基础] C语言常用函数memset的使用方法
函数声明:void *memset(void *s, int ch, size_t n); 用途:为一段内存的每一个字节都赋予ch所代表的值,该值采用ASCII编码. 所属函数库:<memory ...
- Git.Framework 框架随手记--ORM查询返回实体对象
使用ORM有一个优势,可以通过某种机制将数据库中的数据转化为自己想要的对象形式数据.本章记录一下如何使用Git.Framework返回实体对象 一. Git.Framework 中提供的方法 在Git ...
- Bootstrap3.0学习第二十六轮(JavaScript插件——图片轮播)
详情请查看http://aehyok.com/Blog/Detail/32.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...
- java编程
Java编程:五子棋游戏源代码 import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing ...
- ajax中的application/x-www-form-urlencoded中的使用
ajax中的application/x-www-form-urlencoded中的使用一,HTTP上传的基本知识 在Form元素的语法中,EncType表明提交数据的格式 用 Enctype 属性指定 ...
- 【转】Oracle集合操作函数:union、intersect、minus
集合操作符专门用于合并多条select 语句的结果,包括:UNION, UNION ALL, INTERSECT, MINUS.当使用集合操作符时,必须确保不同查询的列个数和数据类型匹配. 集合操作符 ...
- WPF学习(一)--布局控件简介
WPF的4种基本布局介绍 1.Grid的布局 这个就没啥特别好说的,其实,基本上复杂的布局,都需要用到Grid. 主要就是对行和列进行进行设置和定义. 1.行表格 列表格: 包含行和列的表格 2.St ...
- MVC的URL路由规则
MVC的URL路由规则 Routing的作用:它首先是获取到View传过来的请求,并解析Url请求中Controller和Action以及数据,其次他将识别出来的数据传递给Controller的Act ...
- 【poj2187】 Beauty Contest
http://poj.org/problem?id=2187 (题目链接) 题意 求点集上两点间最长距离 Solution 凸包+旋转卡壳. 旋转卡壳是看起来很难,但是很好意会也很好实现的算法,但是要 ...