现在的位置: 首页 > 综合 > 正文

MVC与设计模式

2012年11月21日 ⁄ 综合 ⁄ 共 1236字 ⁄ 字号 评论关闭

posted on 2006-09-22 20:41 Xu Jianxiang

 

1、  MVC 概述

 

MVC ,即 Model-View-Controller ,“模型 - 视图 - 控制器”,是 Xerox PARC 在八十年代为编程语言 Smalltalk  80 发明的一种软件设计模式,最初是用来构建用户界面。它包括三类对象:模型 Model 是应用对象(数据和应用规则),视图 View 是它在屏幕上的表示,控制器 Controller 定义用户界面对用户输入的响应方式。

 

2、  MVC 特征

 

       特征一:视图与模型分离,一旦模型的数据发生了变化,模型将通知它的视图,而视图将于模型通信以访问相关的数据;

       特征二:视图可以嵌套。

 

3、  MVC 中的设计模式

 

       3.1 View-Model 关系与观察者模式

        观察者( Observer )模式:定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。

        MVC 通过建立一个“定购 / 通知”机制将视图和模型分离,一个模型可以有多个视图,当模型的数据改变后会通知它的所有视图。

       3.2 View-View 关系组合模式

        组合( Composite )模式:将对象组合成树形结构以表示“整体-部分”的层次结构,使得对单个对象和复合对象的使用具有一致性。

MVC  View 类的子类 CompositeView 类来支持嵌套视图。 MVC 将一些对象划为一组,并将该组对象当作一个对象来使用。

       3.3 View-Controller 关系与策略模式

        策略( Strategy )模式:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。算法的变化可以独立于使用者。

        MVC 将响应机制封装在 Controller 对象中, MVC 允许在不改变视图外观 View 的情况下改变视图对用户输入的响应方式。 View 使用 Controller 的某个实例来实现一个特定的响应策略,实行不同的响应策略需要用不同的 Controller 实例替换即可。

 

4、  MVC 框架

 

MVC 框架把一个应用的输入、处理、输出流程按照 Model  View  Controller 的方式进行分离,这样一个应用被分成三个层——视图层、控制层和模型层。

比较常见的 MVC 框架有: Struts  Webwork  Tapestry  JSF  Spring MVC 等。

资料:
《设计模式》 GOF
MVC在Web系统中的模式与应用 http://dev2dev.bea.com.cn/techdoc/20031194.html
MVC模式 http://www.itisedu.com/phrase/200604231324325.html


抱歉!评论已关闭.