?
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
posted on 2006-09-22 20:41
Xu Jianxiang 閱讀(559)
評論(0) 編輯 收藏 所屬分類:
Design Research