MVC與三層架構有什么區別


首先,聲明一下,三層是三層,MVC是MVC,這倆是毫無關系的。

三層是從整個應用程序架構的角度來分的三層(如果程序需要,還可以分多層)。

三層架構通常包括表示層,業務邏輯層以及數據訪問層。雖然三層架構將系統在邏輯上分成了三層,但是它並不是物理上的分層。也就是說,對不同層的代碼而言,經歷編譯、打包、部署后,所有的代碼最終還是運行在同一個進程中。

MVC是在應用程序(BS結構)的視圖層划分出來的不同功能的幾個模塊。

MVC主要是為了解決應用程序用戶界面的樣式替換問題,把展示數據的 HTML 頁面盡可能的和業務代碼分離。MVC把純凈的界面展示邏輯(用戶界面)獨立到一些文件中(Views),把一些和用戶交互的程序邏輯(Controller)單獨放在一些文件中,在 Views 和 Controller 中傳遞數據使用一些專門封裝數據的實體對象,這些對象,統稱為Models。

只所以說MVC和三層毫無關系,是因為它們二者使用范圍不同:三層可以應用於任何語言、任何技術的應用程序;而MVC只是為了解決BS應用程序視圖層各部分的耦合關系。它們互不沖突,可以同時存在,也可根據情況使用其中一種。

對於,我們JAVA開發者來說:

三層架構是界面層(UI)業務邏輯層(BLL)和數據訪問層(DAL)構成的,而MVC設計模式是模型層(M)界面層(View)和控制層(Controller)構成的,而且他們之間也不對應。

如下圖所示:
12114411_BAfs.gif

 

 

是不是頓時感到世界明朗了,對分層又深入了解了一步。

分割線 
作者: 楊校

出處: http://www.cnblogs.com/xiaoxiao5016

分享是快樂的,也見證了個人成長歷程,文章大多都是工作經驗總結以及平時學習積累,基於自身認知不足之處在所難免,也請大家指正,共同進步。

本文版權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出, 如有問題, 可郵件(397583050@qq.com)咨詢。

 
 
 
好文要頂  關注我 
 


免責聲明!

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



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