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 ...
随机推荐
- HTTP之手机抓包工具篇
简介 现在手机移动互联网时代 手机app 运用 如日冲天.自然手机app的问题排除也是头疼,明明自己测试 上线的接口正常 到了手机app就不行.怎么办呢?别急,现在有好多手机抓包工具啦! 1. Cha ...
- spring+mybatis实现读写分离
springmore-core spring+ibatis实现读写分离 特点 无缝结合spring+ibatis,对于程序员来说,是透明的 除了修改配置信息之外,程序的代码不需要修改任何东西 支持sp ...
- [AaronYang]C#人爱学不学[4]
本文章不适合入门,只适合有一定基础的人看.我更相信知识细节见高低,我是从4.0开始学的,终于有时间系统的学习C#5.0,是5.0中的知识,会特殊标记下.但写的内容也可能含有其他版本framework的 ...
- js回掉页面后台代码-简单demo
后台代码: public partial class WebForm1 : System.Web.UI.Page, ICallbackEventHandler { protected void Pag ...
- 一篇让Java程序猿随时可以翻看的Oracle总结
来源:http://www.cnblogs.com/bzx888/p/4820712.html 有关的语句和操作基本都是按照实战中的顺序来总结的,比如创建用户,建表,序列初始化,插入数据的顺序呢. 这 ...
- 洛谷P1755 斐波那契的拆分
题目背景 无 题目描述 已知任意一个正整数都可以拆分为若干个斐波纳契数,现在,让你求出n的拆分方法 输入输出格式 输入格式: 一个数t,表示有t组数据 接下来t行,每行一个数n(如题) 输出格式: t ...
- org.springframework.orm.hibernate3.LocalSessionFactoryBean的疑惑解决办法
在项目中使用了SSH框架(Struts2 + Spring3+ Hibernate3),applicationContext中配置了sessionFactory <bean id="s ...
- js中改变不同的div属性值的操作
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- linux 搭建SVN服务器,为多个项目分别建立版本库并单独配置权限
1.安装svn服务 # yum install subversion 2.新建一个目录用于存储SVN所有文件 # mkdir /home/svn 3.在上面创建的文件夹中为项目 p ...
- asp.net在线恢复数据库
用于asp.net还原与恢复SqlServer数据库的KillSpid存储过程 CREATE PROCEDURE KillSpid(@dbName varchar(20)) AS BEGIN DECL ...