隨筆-1  評論-68  文章-98  trackbacks-0

          ? 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 閱讀(563) 評論(0)  編輯  收藏 所屬分類: Design Research
          主站蜘蛛池模板: 台前县| 定日县| 盈江县| 息烽县| 五莲县| 高雄市| 西平县| 河东区| 长兴县| 宝鸡市| 晋中市| 友谊县| 临洮县| 噶尔县| 铜陵市| 禹城市| 高安市| 海伦市| 曲周县| 玛多县| 靖远县| 余干县| 瓦房店市| 吉安县| 郑州市| 凤城市| 阜平县| 九龙坡区| 九江县| 且末县| 韶关市| 宜兴市| 红原县| 东光县| 晋江市| 文昌市| 富源县| 阿拉善盟| 鄢陵县| 临桂县| 息烽县|