本篇博客是從網上找得各種資料,一再說說三層架構和MVC的區別
http://baike.baidu.com/view/687468.htm
三層架構與MVC的區別 MVC(模型Model-視圖View-控制器Controller)是一種設計模式,我們可以用它來創建在域對象和UI表示層對象之間的區分。
同樣是架構級別的,相同的地方在於他們都有一個表現層,但是他們不同的地方在於其他的兩個層。
在三層架構中沒有定義Controller的概念。這是我認為最不同的地方。而MVC也沒有把業務的邏輯訪問看成兩個層,這是采用三層架構或MVC搭建程序最主要的區別。當然了。在三層中也提到了Model,但是三層架構中Model的概念與MVC中Model的概念是不一樣的,“三層”中典型的Model層是以實體類構成的,而MVC裡,則是由業務邏輯與訪問數據組成的。
http://topic.csdn.net/u/20090710/14/07f4447d-60c4-4b74-af1c-ea1b6e2e9ca7.html
當然啊,你要明白三層架構的MVC的區別和聯系:
三層架構是最基本的項目分層結果,而MVC則是三層架構的一個變體,MVC是一種好的開發模式。首先你要明白MVC分別代表的是什麼意思.
M 即Model(模型層),主要負責出來業務邏輯以及數據庫的交互
V 即View(視圖層),主要用於顯示數據和提交數據
C 即Controller(控制器),主要是用作捕獲請求並控制請求轉發
三層:UI 界面層 BLL 業務邏輯層,DAL數據訪問層,Model 實體層
MVC中的的M 不是三層中的Model(實體層),他其實包括三層中的 BLL,DAL,Model,這是非常要注意的,這也是他們之間的區別的關鍵所在
其有點有如下:
低耦合性
高重用性和可適用性
較低的生命周期成本
快速的部署
可維護性
有利於軟件工程化管理
當然優點也有缺點,那就是內部結構復雜,不容易理解,文件數量大,管理難度自然也就大
MVC設計模式…
三層是基於業務邏輯來分的,而mvc是基於頁面來分的
根本就沒有什麼可比性。
其實兩個一起用我感覺很好
MVC模式是一種復合設計模式,一種解決方案
三層是種軟件架構,通過接口實現編程
三層模式是體系結構模式,MVC是設計模式
三層模式又可歸於部署模式,MVC可歸於表示模式
沒有什麼取捨的,說的根本不是一回事。在所謂的“三層”中,它要求你將BLL層獨立出來,它只是告訴你表示層和業務邏輯層之間的靜態關系。而MVC則告訴你在這個具體的地方如何處理其動態驅動流程,盡管mvc仍然粗糙(甚至mvp也是粗糙的),但是已經比所謂三層更細致一些了。
謝謝大家的關注,這幾天都在忙面試,沒來結貼。再次謝謝大家。
我大概明白了:三層架構和mvc設計模式側重點不一樣,三層是一種籠統的架構思想,沒有限制具體的設計;而mvc就比較具體的說明它的設計方法。
還是自己動手做一下,理解會更深一些,以前都是用三層架構的方法
---------
http://www.BkJia.com/kf/201110/106833.html
ASP.NET MVC 與 WebForm 三層架構 區別
1.傳統WebForm開發中存在的一些問題
傳統的ASP.NET開發中,微軟的開發團隊為開發者設計了一個在可視化設計器中拖放控件,編寫代碼響應事件的快速開發環境。然而,它所帶來的負面效應是:
由於控件封裝了很多東西,開發者很難了解這背後的HTML是如何運作的
容易得到一個包含大量ViewState的頁面,使得頁面尺寸遠遠超過所需的內容,使得頁面的打開速度較慢
不容易被測試
2.什麼是MVC?
MVC(Model-View-Controller,模型-視圖-控制器模式)是軟件工程中的一種軟件架構模式。它把軟件系統分為三個基本部分:模型(Model)、視圖(View)和控制器(Controller)。
3.什麼是ASP.NET MVC?
ASP.NET MVC是微軟的開發團隊基於MVC開發的一個易於被測試的框架。它具有以下特性:
沒有數據回傳
沒有在頁面中保存視圖狀態
開發者可以完全掌控頁面的呈現過程
易於單元測試
易於測試驅動開發
可擴展、可替換
支持WebForm中的有關特性,如:用戶控件、母版頁、數據綁定、本地化等
不在基於文件目錄結構,而是將URL映射到控制器中
4. 為什麼使用ASP.NET MVC?
易於進行單元測試
易於進行測試驅動開發
避免了WebForm中大量的ViewState導致頁面文件變得臃腫
5. MVC與三層架構?
MVC是一種模式
ASP.NET MVC是一個基於MVC模式的開發框架
三層架構是一種架構
至於區別,可以嚴格的從概念上區分開來