三層架構與MVC 個人理解

2021-08-20 02:14:59 字數 1232 閱讀 2476

三層架構主要分為表示層(ui),業務邏輯層(bll)以及資料訪問層(dal)。

三層架構主要是為了實現高內聚低耦合效果。主要是可以使得我們寫的**可以只關注於結構中的某一層,思路更加清晰,有利於**的復用性。例如我最近的寫的乙個專案中,當dal層寫好後,絕大部分情況都不需要對其進行修改,這種架構便於我們對於程式設計的書寫,但這種架構不可避免的最大問題是會降低了系統的效能。

資料訪問層:主要是去對資料庫中的資料進行操作的層次,基本所有的對資料庫的操作都在這進行,例如最簡單的增刪改查、執行儲存過程等操作均是在這裡進行的。如果說我們的系統是個工廠,那麼資料訪問層就是工廠去進貨的過程。

業務邏輯層:主要是針對我們系統具體的需求而進行的操作,主要就是對我們從資料訪問層獲取到的資料進行處理。這個過程就好比工廠中的加工過程(將原材料加工成使用者希望的物品)

表示層:主要是面向客戶的介面部分,例如winform程式、web介面等等。

最後就是在剛剛接觸mvc架構時,我也曾將他們混淆了,mvc也是三層結構:模型層(model)檢視層(view)以及控制器(controller)。三層架構的ui層與mvc的檢視層是相同的,而其他兩層是截然不同的層次。

最開始我將三層架構中的model與mvc中的model混淆了,原因也很簡單名字一樣嘛,然而其實他們是不同的,三層架構中的model只是實體類的集合,而mvc的model指的是在程式中處理資料邏輯的部分,這也就意味著mvc中的model包含了三層架構中的資料訪問與業務邏輯的作用。

而mvc中的檢視層則類似於三層架構中的表示層,那麼疑問就來了mvc中的控制器又是什麼作用的呢?控制器主要是程式中處理使用者資料的部分。mvc的架構的流程是:使用者從對系統進行操作,控制器獲取資訊傳遞給model,model層對資料進行處理分析和資料庫的訪問之後,將結果在檢視層呈現給使用者,使用者獲取到資訊後在進行操作的這一迴圈過程。

mcv與三層架構有著一些相同的優點,例如:**復用性高,低耦合,可維護性高等等,但是mvc不太適合於中小規模的專案進行,因為其結構相較於三層架構而言複雜太多,而由於結構的關係檢視對於模型的訪問效率過低。

三層架構與MVC

三層架構分為表示層 ui 業務邏輯層 bll 資料訪問層 dal dal 直接運算元據庫,針對資料的增 刪 改 查。bll 針對具體問題,對資料層操作,對資料業務邏輯進行處理。ui 頁面展示。mvc是在表示層 ui 中再度進行分化,分成實體 model 檢視 view 控制器 control mod...

」MVC 「與 」三層架構「

由於之前主要是在做c s結構的應用,所以接觸b s沒多久,對asp.net mvc html5 jquery這些東西了解不夠,有個新人一直說 asp.net mvc 是假三層 用了mvc就沒必要再有web中間的服務層 後來我發現這個觀點是錯誤的,因為我去問 度娘 了。mvc全名是model view...

三層架構與MVC

三層架構是指 檢視層view 服務層service與持久層dao。為了更好的降低各層間的耦合度,在三層架構程式設計中,採用面向抽象程式設計。即上層對下層的呼叫,是通過介面實現的。而下層對上層的真正服務提供者,是下層介面的實現類。服務標準 介面 是相同的,服務提供者 實現類 可以更換。這就實現了層間解...