MVC

MVC是一種流行的程序架構,獲得C#、Java、PHP、Ruby等多種語言的支持。MVC   


是 模型(Model) 、視圖(View)、控制器(Control) 的英文首字母的縮寫,核心思想是


:視圖和用戶交互,通過事件導致控制器改變,控制器改變導致模型改變或者控制器


同時改變兩者(視圖和模型), 模型改變導致視圖改變,或者視圖改變潛在的從模型


裏面獲得參數來改變自己。


MVC(Model-View-Controller),即把一個應用的輸入、處理、輸出流程按照


Model、View、Controller的方式進行分離,這樣一個應用被分成三個層——模型層


、視圖層、控制層。MVC一個大的好處是它能爲你的應用程序處理很多不同的視圖。


在視圖中其實沒有真正的處理髮生,不管這些數據是聯機存儲的還是一個僱員列表,


作爲視圖來講,它只是作爲一種輸出數據並允許用戶操縱的方式。


視圖(View):代表用戶交互界面,MVC設計模式對於視圖的處理是限於視圖上數據的


採集和處理,以及用戶的請求,而不包括在視圖上的業務流程的處理。


模型(Model):業務流程/狀態的處理以及業務規則的制定。業務流程的處理過程對其


它層來說是黑箱操作,模型接受視圖請求的數據,並返回最終的處理結果。業務模型


的設計可以說是MVC的核心。被模型返回的數據是中立的,就是說模型與數據格式無


關,這樣一個模型能爲多個視圖提供數據。由於應用於模型的代碼只需寫一次就可以


被多個視圖重用,所以減少了代碼的重複性。


控制(Controller):可以理解爲從用戶接收請求, 將模型與視圖匹配在一起,共同完成


用戶的請求,但是它卻不做任何的數據處理。


它的優勢在與:開發人員可以只關注整個結構中的其中某一層,可以很容易的用新的


實現來替換原有層次的實現,可以降低層與層之間的依賴,有利於標準化,利於各層


邏輯的複用
MVC模式的缺點是由於它沒有明確的定義,所以完全理解MVC模式並不是很容易。使


用MVC模式需要精心的計劃,由於它的內部原理比較複雜,所以需要花費一些時間去


思考。開發一個MVC模式架構的工程,將不得不花費相當可觀的時間去考慮如何將


MVC模式運用到應用程序中,同時由於Model和 View 要嚴格的分離,這樣也給調試


應用程序帶來了一定的困難。每個構件在使用之前都需要經過徹底的測試。另外由於


MVC模式將一個應用程序分成了三個部件,所以這意味着同一個工程將包含比以前更


多的文件。
過去MVC模式並不適合小型甚至中等規模的應用程序,這樣會帶來額外的工作量,增


加應用的複雜性。但現在多數軟件設計框架,能直接快速提供MVC骨架,供中小型應


用程序開發,此問題不再存在。對於開發存在大量用戶界面,並且邏輯複雜的大型應


用程序,MVC將會使軟件在健壯性、代碼重用和結構方面上一個新的臺階。儘管在最


初構建MVC模式框架時會花費一定的工作量,但從長遠的角度來看,它會大大提高後


期軟件開發的效率。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章