mvc原理和mvc模式的優缺點


一、mvc原理 
  mvc是一種程序開發設計模式,它實現了顯示模塊與功能模塊的分離。提高了程序的可維護性、可移植性、可擴展性與可重用性,降低了程序的開發難度。它主要分模型、視圖、控制器三層。 
1、模型(model)它是應用程序的主體部分,主要包括業務邏輯模塊(web項目中的Action,dao類)和數據模塊(pojo類)。模型與數據格式無關,這樣一個模型能為多個視圖提供數據。由於應用於模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性 
2、視圖(view) 用戶與之交互的界面、在web中視圖一般由jsp,html組成 
3、控制器(controller)接收來自界面的請求 並交給模型進行處理 在這個過程中控制器不做任何處理只是起到了一個連接的做用 

二、MVC的優點 
1、可以為一個模型在運行時同時建立和使用多個視圖。變化-傳播機制可以確保所有相關的視圖及時得到模型數據變化,從而使所有關聯的視圖和控制器做到行為同步。 
2、視圖與控制器的可接插性,允許更換視圖和控制器對象,而且可以根據需求動態的打開或關閉、甚至在運行期間進行對象替換。 
3、模型的可移植性。因為模型是獨立於視圖的,所以可以把一個模型獨立地移植到新的平台工作。需要做的只是在新平台上對視圖和控制器進行新的修改。 
4、潛在的框架結構。可以基於此模型建立應用程序框架,不僅僅是用在設計界面的設計中。 

三、MVC的不足之處 
1、增加了系統結構和實現的復雜性。對於簡單的界面,嚴格遵循MVC,使模型、視圖與控制器分離,會增加結構的復雜性,並可能產生過多的更新操作,降低運行效率。 
2、視圖與控制器間的過於緊密的連接。視圖與控制器是相互分離,但確實聯系緊密的部件,視圖沒有控制器的存在,其應用是很有限的,反之亦然,這樣就妨礙了他們的獨立重用。 
3、視圖對模型數據的低效率訪問。依據模型操作接口的不同,視圖可能需要多次調用才能獲得足夠的顯示數據。對未變化數據的不必要的頻繁訪問,也將損害操作性能。 
4、目前,一般高級的界面工具或構造器不支持模式。改造這些工具以適應MVC需要和建立分離的部件的代價是很高的,從而造成MVC使用的困難。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM