青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 26  文章 - 6  trackbacks - 0
<2009年11月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

朋友

  • cqh
  • 大學室友...

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

以下是百度百科的介紹:

MVC與模板概念的理解

  MVC本來是存在于Desktop程序中的,M是指數據模型,V是指用戶界面,C則是控制器。使用MVC的目的是將MV的實現代碼分離,從而使同一個程序可以使用不同的表現形式。比如一批統計數據你可以分別用柱狀圖、餅圖來表示。C存在的目的則是確保MV的同步,一旦M改變,V應該同步更新。
  模型-視圖-控制器(MVC)是Xerox PARC在八十年代為編程語言Smalltalk80發明的一種軟件設計模式,至今已被廣泛使用。最近幾年被推薦為Sun公司J2EE平臺的設計模式,并且受到越來越多的使用 ColdFusion 和 PHP 的開發者的歡迎。模型-視圖-控制器模式是一個有用的工具箱,它有很多好處,但也有一些缺點。 

MVC如何工作

  
MVC是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型、視圖、控制器。它們各自處理自己的任務。
  視圖
  視圖是用戶看到并與之交互的界面。對老式的Web應用程序來說,視圖就是由HTML元素組成的界面,在新式的Web應用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術已層出不窮,它們包括Adobe Flash和象XHTMLXML/XSLWML等一些標識語言和Web services.
  如何處理應用程序的界面變得越來越有挑戰性。MVC一個大的好處是它能為你的應用程序處理很多不同的視圖。在視圖中其實沒有真正的處理發生,不管這些數據是聯機存儲的還是一個雇員列表,作為視圖來講,它只是作為一種輸出數據并允許用戶操縱的方式。
  模型
  模型表示企業數據和業務規則。在MVC的三個部件中,模型擁有最多的處理任務。例如它可能用象EJBsColdFusion Components這樣的構件對象來處理數據庫。被模型返回的數據是中立的,就是說模型與數據格式無關,這樣一個模型能為多個視圖提供數據。由于應用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性。
  控制器

控制器接受用戶的輸入并調用模型和視圖去完成用戶的需求。所以當單擊Web頁面中的超鏈接和發送HTML表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調用哪個模型構件去處理請求,然后確定用哪個視圖來顯示模型處理返回的數據。
  現在我們總結MVC的處理過程,首先控制器接收用戶的請求,并決定應該調用哪個模型來進行處理,然后模型用業務邏輯來處理用戶的請求并返回數據,最后控制器用相應的視圖格式化模型返回的數據,并通過表示層呈現給用戶。



以下是來自BOLG
http://www.cnblogs.com/wisdomqq/archive/2009/04/29/1446579.html

CSDN和園子里有朋友談到三層與MVC的區別,以前也有人拋出這個問題,本人對來公司面試的朋友也偶樂會提這方面的問題。
    那么我也來講講我對這兩者的理解吧。
    首先對這個題目,本身是存在問題的,XX結構XX模式的區別?請問中國社會制度與美國人生活方式有什么區別?
    這兩者本身講的是不同方向與角度的問題,在實際應用中他們的確存在一些相似的特點,在很多書籍中也沒有深入講解,以致于造成困惑,為了更好的理解他們,姑且來說說區別吧。
首先N層結構是一種軟件抽象的層次結構,是對復雜軟件的一種縱向切分,每一層次中完成同一類型的操作,以便將各種代碼以其完成的使命作為依據來分割,以將低軟件的復雜度,提高其可維護性。一般來說,層次之間是向下依賴的,下層代碼未確定其接口(契約)前,上層代碼是無法開發的,下層代碼接口(契約)的變化將使上層的代碼一起變化。三層結構是N層結構的一種,是人產在長時間使用中得出來的一種應用場合廣泛的N層結構,被當作一種典型的軟件層次結構而廣為流傳甚至寫入教科書。
    MVC模式是一種復合設計模式,一種在特定場合用于解決某種實際問題來得出的可以反復實踐的解決方案。巧合的是他也有三個事物組成,于是乎人們就有了一種想當然的對應關系:展示層-View;業務邏輯層-Control;持久層-Model。首先MVC中的三個事物之間并不存在明顯的層次結構,沒有明顯的向下依賴關系,相反的,ViewModel往往是比較獨立的,而Control是連接兩者的橋梁,他們更像是橫向的切分。這樣一來就出現一個結果,MVC中每個塊都是可以獨立測試的,而三層結構中,上層模塊的運行測試勢必要提供下層代碼或者提供相同接口的樁。相對來說,MVC復雜得多,但是結構更清晰,耦合性更低。
    另外,MVC中每一塊內部特別是Model內部經常被設計為多層的。在我認為的一個良好的MVC模式構建的結構中,Control是核心,小且較為穩定的,可以作為一個核心框架來提供,有擴展點,但基本上可以簡單配置不需要任何代碼就可以運行。而View則可能是一套或多種可選擇的視圖引擎,決定了軟件展示給用于的界面,使用時的主要工作量在于擴展點以及根據需要而數量不同的視圖模板。Model則是業務提供者,決定了軟件提供的功能,其內部可能是一些普通的類或者是實現了某些接口的類,在這一塊當中可能根據業務的不同而色彩繽紛,對于復雜的軟件可能會分成很多層,如業務邏輯層、業務提供層、系統提供層、數據提供層、數據訪問層等。
    我經常用于比喻MVC的例子是小時候玩的那種卡帶式游戲機,Control是主機,一般來說我買一個主機就行了,只要他不壞,他就能一直讓我玩這一類的游戲。View則是電視機和游戲手柄,電視機可以獨立工作,他不管輸入的是電視信號、影碟機信號還是游戲機信號,他只管顯示,而且他決定了我們看到的效果是怎么樣的,如果我想要個尺寸更大的或者彩色的顯示效果,我只需要買個相應的電視機就行了,手柄也是可以換的,要遙桿還是帶震動的。Model則是游戲卡帶,他絕定了我玩的是什么游戲,是魂斗羅還是超級瑪莉,而且游戲機主機和電視機生產廠家永遠也不知道在上面有可能會運行什么樣的游戲。卡帶中可能會有游戲代碼和存儲單元,都根據游戲的需要而設計。

===================4/30補充==================

  有朋友提到游戲主機提供的卡帶插槽的接口,在設計中,有時也由Control提供一組接口,以用于ModelView的實現,這樣就形成了依賴。一般來說這樣設計也沒有太大的問題,只是會提高模塊間的耦合度,也會帶來一些侵入性。為了更完美,可以不用接口來提供契約,可以用配置信息(或稱元數據信息)+反射來提供契約,那么這個類接口就可以退化到只要符合CLS就可以了,也就是普通的類,就像現在的計算機接口廣泛采用USB,無論是U盤、打印機、掃描儀或者是加密狗,他們都是普通的USB設備而已。
  提到USB有一個題外話,模塊的可插拔性設計甚至是熱插拔設計,系統可以在不停止運行的情況下動態的掛載或移除模塊,動態掛載模塊需要系統能夠自動發現新模塊并根據自描述的信息進行自動配置,移除可能情況更復雜一點,需要安全刪除硬件類似的功能。
  在設計廣泛重用的框架時會考慮多種情況以達到更大的適應性,一般項目中應用MVC模式可以較為隨意。

posted on 2009-07-23 10:23 longshen 閱讀(1172) 評論(0)  編輯 收藏 引用 所屬分類: 程序員
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            夜夜爽99久久国产综合精品女不卡| 亚洲三级免费观看| 亚洲一区二区三区视频播放| 欧美日韩国产美| 亚洲特级片在线| 亚洲一区不卡| 国精产品99永久一区一区| 久久美女性网| 欧美国产专区| 亚洲欧美日韩天堂| 欧美一区二区三区在线看| 亚洲福利小视频| 91久久线看在观草草青青| 欧美伦理一区二区| 欧美中文字幕| 免费观看成人网| 亚洲你懂的在线视频| 欧美在线免费播放| 亚洲美女尤物影院| 亚洲欧美日韩国产中文在线| 激情国产一区二区| 亚洲精品欧美专区| 国产欧美在线| 亚洲国产精品专区久久| 国产精品爱啪在线线免费观看| 久久久久久久综合狠狠综合| 欧美高清视频在线| 久久大逼视频| 欧美日韩精品二区| 久久综合久色欧美综合狠狠| 欧美经典一区二区| 久久这里只有| 欧美视频日韩视频在线观看| 免费久久99精品国产| 欧美少妇一区二区| 欧美激情亚洲精品| 国产日产欧美精品| 99国产精品国产精品毛片| 国内精品久久久久久久97牛牛| 亚洲美女视频在线观看| 亚洲第一综合天堂另类专| 一区二区三区精品| 亚洲精品欧美一区二区三区| 性色av一区二区三区红粉影视| 日韩视频在线观看免费| 久久亚洲国产精品一区二区| 性欧美办公室18xxxxhd| 欧美日韩国产系列| 亚洲国产成人91精品| 激情视频一区二区| 亚洲欧美日韩在线高清直播| 亚洲香蕉视频| 欧美乱妇高清无乱码| 欧美成va人片在线观看| 国产一区在线观看视频| 亚洲欧美视频在线观看| 一本色道婷婷久久欧美| 欧美国产免费| 亚洲大胆av| 亚洲黄一区二区| 狂野欧美激情性xxxx| 两个人的视频www国产精品| 国产美女精品免费电影| 亚洲欧美日韩一区在线观看| 亚洲在线电影| 国产精品日本一区二区 | 精品动漫一区| 欧美综合国产| 久久精品欧美日韩| 黑丝一区二区| 久久综合狠狠综合久久综青草| 久久久伊人欧美| 精品电影在线观看| 久久亚洲国产成人| 亚洲高清影视| 中国av一区| 国产精品视频专区| 久久精品盗摄| 欧美成人tv| 亚洲精品日韩在线观看| 欧美日韩国产区| 亚洲天堂av电影| 欧美在线亚洲在线| 伊人久久婷婷| 欧美美女操人视频| 亚洲一区二区三区四区视频| 久久精品久久综合| 亚洲欧洲日本国产| 欧美三级午夜理伦三级中文幕| 亚洲综合精品| 老司机精品久久| 亚洲精品中文字幕有码专区| 欧美视频中文一区二区三区在线观看| 亚洲视频在线观看视频| 老司机午夜精品视频| 日韩视频免费| 国产精品一二三| 蜜桃久久精品乱码一区二区| 日韩视频一区二区在线观看| 久久精品女人天堂| 日韩视频免费看| 国产精品色在线| 免费一区二区三区| 亚洲在线免费观看| 亚洲电影成人| 久久不见久久见免费视频1| 亚洲第一综合天堂另类专| 欧美日韩精品在线播放| 久久精品国产精品亚洲精品| 亚洲日韩欧美视频一区| 久久精品人人做人人爽| 中文欧美字幕免费| 精品成人一区二区三区四区| 欧美婷婷六月丁香综合色| 久久在线视频| 亚洲一区日韩在线| 亚洲第一页中文字幕| 久久国产视频网| 亚洲一区二区三区成人在线视频精品| 国产一区二区三区在线播放免费观看| 欧美精品乱码久久久久久按摩| 欧美制服丝袜| 亚洲综合精品四区| 99精品免费视频| 亚洲黄色成人久久久| 久久久久久一区二区| 亚洲欧美日本日韩| 在线一区二区三区四区| 亚洲欧洲精品一区二区| 国产亚洲欧美日韩日本| 国产精品毛片一区二区三区 | 一本一本久久| 亚洲激情电影中文字幕| 欧美成人免费大片| 久久综合网络一区二区| 久久久久久自在自线| 亚洲欧美久久| 亚洲欧美国产不卡| 亚洲午夜av电影| 在线视频亚洲欧美| 中文欧美字幕免费| 亚洲色图自拍| 亚洲五月婷婷| 亚洲欧美日本精品| 亚洲在线视频免费观看| 亚洲一区日韩| 亚洲欧美日韩网| 欧美亚洲免费电影| 久久av一区二区三区漫画| 欧美一区二区三区免费看| 午夜精品一区二区三区电影天堂 | 精品1区2区3区4区| 影音国产精品| 亚洲激情自拍| 99视频精品| 亚洲自拍三区| 久久成人人人人精品欧| 久久精品视频播放| 免费欧美在线视频| 亚洲福利视频二区| 日韩视频一区二区| 亚洲欧美美女| 久久久五月婷婷| 欧美精品一区二区三区高清aⅴ| 欧美国产精品日韩| 欧美日韩在线观看一区二区| 国产精品日本精品| 在线欧美三区| 一区二区三区福利| 久久国内精品视频| 欧美国产精品一区| 日韩视频在线播放| 欧美一区二区三区的| 久久久夜色精品亚洲| 欧美美女操人视频| 国产亚洲二区| 亚洲美女黄网| 欧美一区二区三区视频免费| 免费在线日韩av| 99精品热6080yy久久| 久久精品国产免费看久久精品| 女主播福利一区| 国产精品入口| 亚洲理论电影网| 欧美在线一级va免费观看| 亚洲高清免费在线| 欧美一区二区女人| 欧美精品一区在线| 黄色成人在线网址| 亚洲影视九九影院在线观看| 欧美/亚洲一区| 亚洲一区二区日本| 欧美精品v日韩精品v韩国精品v| 国产精品免费网站| 亚洲毛片播放| 老司机67194精品线观看| 一区二区三区高清在线观看| 蜜桃视频一区| 激情综合自拍| 久久精品道一区二区三区|