目錄
一、什么是三層架構?
二、為什么使用三層架構?
三、與兩層的區別
一、什么是三層架構?
- UI(表現層): 主要是指與用戶互動的界面,用于接收用戶輸入的資料和顯示處理后用戶需要的資料,
- BLL:(業務邏輯層): UI層和DAL層之間的橋梁,實作業務邏輯,
- DAL:(資料訪問層): 與資料庫打交道,主要實作對資料的增、刪、改、查,將存盤在資料庫中的資料提交給業務層,同時將業務層處理的資料保存到資料庫,(當然這些操作都是基于UI層的,用戶的需求反映給界面(UI),UI反映給BLL,BLL反映給DAL,DAL進行資料的操作,操作后再一一回傳,直到將用戶所需資料反饋給用戶)
- Entity(物體層):它不屬于三層中的任何一層,但是它是必不可少的一層,

Entity在三層架構中的作用:
-
1、實作面向物件思想中的"封裝";
-
2、貫穿于三層,在三層之間傳遞資料;(注:確切的說物體層貫穿于三層之間,來連接三層)
-
3、每一條資料就相當于一個物件,每個欄位對應物件相應的屬性(ORM思想),
-
4、每一層(UI—>BLL—>DAL)之間的資料傳遞(單向)是靠變數或物體作為引數來傳遞的,這樣就構造了三層之間的聯系,完成了功能的實作,
二、為什么使用三層架構?
目的很簡單,實作 ”高內聚,低耦合“,
內聚:一個模塊內各個元素彼此結合的緊密程度,高內聚就是一個模塊內各個元素彼此結合的緊密程度高,
耦合:一個完整的系統,模塊與模塊之間,盡可能的使其獨立存在,也就是說,讓每個模塊,盡可能的獨立完成某個特定的子功能,模塊與模塊之間的介面,盡量少而簡單,如果某兩個模塊間的關系比較復雜的話,最好首先進行模塊劃分,有利于修改和組合,
三、與兩層的區別
兩層:

(當任何一個地方發生變化時,都需要重新開發整個系統,"多層"放在一層,分工不明確耦合度高——難以適應需求變化,可維護性低、可擴展性低)
三層:

(發生在哪一層的變化,只需更改該層,不需要更改整個系統,層次清晰,分工明確,每層之間耦合度低——提高了效率,適應需求變化,可維護性高,可擴展性高)
三層架構的優勢:
-
1,結構清晰、耦合度低
-
2,可維護性高,可擴展性高
-
3,利于開發任務同步進行, 容易適應需求變化
三層架構的劣勢:
-
1、降低了系統的性能,這是不言而喻的,如果不采用分層式結構,很多業務可以直接造訪資料庫,以此獲取相應的資料,如今卻必須通過中間層來完成,
-
2、有時會導致級聯的修改,這種修改尤其體現在自上而下的方向,如果在表示層中需要增加一個功能,為保證其設計符合分層式結構,可能需要在相應的業務邏輯層和資料訪問層中都增加相應的代碼
-
3、增加了代碼量,增加了作業量
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/387851.html
標籤:其他
