三層架構(3-tier architecture) 通常意義上的三層架構就是將整個業務應用劃分為:表現層(ui)、業務邏輯層(bll)、資料訪問層(dal)。區分層次的目的即為了「高內聚,低耦合」的思想。
1、表現層(uil):通俗講就是展現給使用者的介面,即使用者在使用乙個
系統的時候他的所見所得。
2、業務邏輯層(bll):針對具體問題的操作,也可以說是對資料層的操作,對資料業務邏輯處理。
3、資料訪問層(dal):該層所做事務直接運算元據庫,針對資料的增添、刪除、修改、查詢等。
舉乙個常見的例子,
如果您經營乙個飯店,你會請三種員工,一種是服務員,負責給客戶提供服務,另一種是廚師,負責烹飪美食,還有一種是採購員,負責為廚師提供做菜的原料。
飯店將整個業務分解為三部分來完成,每一部分各負其責,服務員只管接待顧客、向廚師傳遞顧客的需求;廚師只管烹炒不同口味、不同特色的美食;後勤工作人員只管提供美食原料;他們三者分工合作共同為顧客提供滿意的服務。在飯店為顧客提供服務期間,服務員、廚師、後勤工作人員,三者中任何一者的人員發生變化時都不會影響其他倆者的正常工作,只對變化者進行重新調整即可正常營業。
我們用三層結構開發的軟體系統於此類似,表示層只提供軟體系統與使用者互動的介面;業務邏輯層是表示層和資料訪問層之間的橋梁,負責資料處理和傳遞;資料訪問層只負責資料的訪問工作。
而服務員、廚師、採購員三者中當任何一者發生變化時都不會影響到其他兩者的正常工作,這正是三層結構各層之間的「高內聚,低耦合」特點。
優勢:結構清晰、耦合度低
便於系統的維護與擴充套件
利於開發任務同步進行
劣勢:降低了一定的效能
一張圖勝過前言萬語
看到這個圖有人可能會問,不是三層嗎?你這圖裡面怎麼有四層?嚴格的說,實體層(entity)不能算一層,它其實僅僅是乙個類,說它實體類跟合適。
三層架構搭建好之後,有乙個問題需要解決,使用什麼在三層之間傳遞資料呢?
目前通用的解決方法有兩種:一種是使用實體類在三層之間傳遞資料,一種是使用dataset在三層之間傳遞資料。
使用實體類的主要好處在於實體類是乙個比較易於控制的物件,它具有物件導向的基本特徵,可以自由的向實體類新增行為等。
實體類是業務邏輯物件的基礎,用物件導向的思想消除了關係資料與物件之間的差異。
實體類通常是乙個儲存應用系統資訊的資料表,將資料表中的字段定義成屬性,將這些屬性封裝成乙個「類」,就是實體類。
什麼是三層架構
1 什麼是三層?三層架構 3 tier architecture 通常意義上的三層架構就是將整個業務應用劃分為 商場負責接待購買肉食品的顧客 商場從食品加工工廠批量購入食品 食品加工廠為商場提供肉食品 兔子在場負責提供原材料給食品加工廠 食品加工企業將整個企業業務分為三部分來實現,這樣做的好 處是 ...
什麼是三層架構?
三層架構 3 tier architecture 通常意義上的三層架構就是將整個業務應用劃分為 表現層 ui 業務邏輯層 bll 資料訪問層 dal 區分層次的目的即為了 高內聚,低耦合 的思想。1 表現層 uil 通俗講就是展現給使用者的介面,即使用者在使用乙個系統的時候他的所見所得。2 業務邏輯...
三層架構(乙個) 什麼是三層架構?
三層架構 3 tier architecture 通常意義上的三層架構就是將整個業務應用劃分為 表現層 ui 業務邏輯層 bll 資料訪問層 dal 區分層次的目的即為了 高內聚,低耦合 的思想。分層 tier 概念 表現層 ui 通俗講就是展現給使用者的介面,用於顯示資料和接受使用者輸入的資料。即...