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

隨筆 - 26  文章 - 6  trackbacks - 0
<2010年12月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用鏈接

留言簿(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和象XHTML,XML/XSL,WML等一些標識語言和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 閱讀(1171) 評論(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>
            欧美视频手机在线| 在线综合欧美| 亚洲欧美国产日韩中文字幕| 亚洲第一搞黄网站| 亚洲春色另类小说| 亚洲精品孕妇| 亚洲免费中文| 久久伊人精品天天| 亚洲欧洲精品一区二区| 亚洲国产导航| 中文在线资源观看网站视频免费不卡 | 日韩视频―中文字幕| 亚洲人成小说网站色在线| 一区二区三区免费观看| 亚洲欧美影音先锋| 欧美成人亚洲成人| 一区二区精品国产| 久久久国产精品一区二区中文| 欧美成年人网站| 国产欧美 在线欧美| 亚洲国产欧美另类丝袜| 亚洲欧美在线观看| 欧美高清在线观看| 亚洲综合欧美日韩| 欧美精品一区在线发布| 国产亚洲毛片在线| 亚洲一区二区三区777| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲精品国产精品乱码不99按摩| 亚久久调教视频| 欧美三日本三级少妇三2023| 激情久久久久| 欧美一区二区在线看| 亚洲欧洲一区| 老司机午夜免费精品视频 | 最近中文字幕mv在线一区二区三区四区| 宅男噜噜噜66一区二区| 欧美成人综合一区| 欧美激情一区在线| 久久精品人人做人人爽电影蜜月| 欧美大片国产精品| 亚洲第一精品夜夜躁人人爽| 午夜精品福利视频| 日韩视频免费在线观看| 美女黄毛**国产精品啪啪| 国产女人18毛片水18精品| 夜夜嗨av一区二区三区网页| 美乳少妇欧美精品| 欧美在线视频一区二区三区| 国产精品捆绑调教| 亚洲午夜小视频| 亚洲精选视频在线| 欧美精品 国产精品| 亚洲福利视频一区二区| 蜜桃久久av一区| 玖玖玖免费嫩草在线影院一区| 国产亚洲欧美日韩一区二区| 午夜精品久久久99热福利| 一区二区三区视频在线观看| 欧美日本网站| 亚洲天堂av电影| 亚洲手机视频| 国产精品美女一区二区| 香蕉成人伊视频在线观看| 亚洲欧美日韩国产| 狠狠综合久久av一区二区小说| 久久精品中文字幕一区二区三区 | 久久av一区二区三区| 国产亚洲欧洲997久久综合| 久久精品青青大伊人av| 久久本道综合色狠狠五月| 在线成人激情| 亚洲精品1区2区| 国产精品久久久久久久久婷婷| 亚洲欧美卡通另类91av| 亚洲女优在线| 国内外成人在线视频| 噜噜爱69成人精品| 欧美国产日韩一区二区三区| 国产精品99久久久久久久久久久久| 亚洲久久一区| 国产伦精品一区二区三区| 久久男人av资源网站| 久久天天狠狠| 亚洲午夜女主播在线直播| 亚洲欧美国产日韩中文字幕| 在线播放国产一区中文字幕剧情欧美| 亚洲国产精品毛片| 国产精品久久久久久久久| 久久久久久久91| 欧美成人第一页| 欧美一区三区三区高中清蜜桃| 久久亚洲精品视频| 亚洲素人在线| 美日韩免费视频| 久久av最新网址| 欧美高清你懂得| 久久久精品国产免大香伊| 欧美国产一区在线| 欧美不卡在线视频| 国产精品久久午夜夜伦鲁鲁| 久久久九九九九| 欧美性猛交视频| 欧美激情视频给我| 国产欧美日韩精品一区 | 亚洲一区二区三区欧美| 亚洲国产精品va| 欧美一区二区三区精品电影| 日韩一区二区精品葵司在线| 久久国产精品免费一区| 亚洲一级片在线看| 欧美韩日精品| 免费在线成人av| 国产亚洲欧美一区在线观看| 亚洲精选久久| 亚洲乱码国产乱码精品精98午夜| 欧美一级在线亚洲天堂| 亚洲一区二区在线播放| 欧美成年人在线观看| 美日韩丰满少妇在线观看| 国产情侣一区| 亚洲一区免费视频| 亚洲综合日韩在线| 欧美性淫爽ww久久久久无| 亚洲第一页中文字幕| 激情偷拍久久| 欧美影片第一页| 久久久91精品国产一区二区三区 | 欧美va天堂在线| 黑人巨大精品欧美一区二区小视频| 在线综合亚洲| 亚洲欧美国产三级| 欧美视频在线一区二区三区| 亚洲精品视频在线观看网站| 亚洲国产精品久久久| 久久亚洲精选| 亚洲第一福利在线观看| 亚洲成色777777在线观看影院| 久久疯狂做爰流白浆xx| 久久黄色级2电影| 国产偷国产偷亚洲高清97cao| 亚洲欧美日韩综合国产aⅴ| 欧美一区二区三区在| 国产精品主播| 欧美在线播放高清精品| 久久网站免费| 亚洲区国产区| 欧美日韩一区二区在线| 在线亚洲电影| 久久久精品性| 亚洲精品三级| 欧美午夜视频在线观看| 亚洲视频碰碰| 久久香蕉国产线看观看av| 国产一区二区三区免费在线观看| 欧美一区二区三区电影在线观看| 久久综合久久美利坚合众国| 亚洲激情六月丁香| 国产精品每日更新| 久久久久久久久久久一区 | 欧美日韩不卡一区| 久久久国产一区二区三区| 免费久久99精品国产自| 欧美日韩精品免费| 国产精品视频午夜| 日韩一级网站| 中文久久精品| 久久久久国产免费免费| 一区二区三区自拍| 欧美国产日韩一二三区| 亚洲午夜久久久| 久久久噜噜噜久久狠狠50岁| 亚洲国产精品一区在线观看不卡| 欧美顶级艳妇交换群宴| 亚洲伊人一本大道中文字幕| 久久精品人人做人人爽| 亚洲国产欧美一区二区三区久久| 欧美日韩精品久久久| 久久精品亚洲精品国产欧美kt∨| 日韩视频一区二区三区在线播放免费观看 | 99精品国产一区二区青青牛奶| 国产精品久久久久久av福利软件| 久久裸体艺术| 亚洲视频一区二区| 亚洲福利在线视频| 久久精品日产第一区二区| 亚洲视频在线一区| 亚洲精品你懂的| 一区二区视频免费在线观看| 国产精品蜜臀在线观看| 欧美va亚洲va国产综合| 欧美在线二区| 亚洲视频在线观看一区| 亚洲国产午夜| 欧美电影免费观看高清完整版| 欧美在线免费播放| 亚洲免费视频网站| 亚洲午夜av在线| a91a精品视频在线观看| 亚洲欧洲午夜|