三層包括業務邏輯層(bll),資料訪問層(dal)和表現層(ui)。
1、表現層:通俗講就是展現給使用者的介面,即使用者在使用乙個系統的時候他的所見所得。
2、業務邏輯層:針對具體問題的操作,也可以說是對資料層的操作,對資料業務邏輯處理。
3、資料訪問層:該層所做事務直接運算元據庫,針對資料的增添、刪除、修改、更新、查詢等。
三層的優缺點:
優點:
1、開發人員可以只關注整個結構中的其中某一層;
2、可以很容易的用新的實現來替換原有層次的實現;
3、可以降低層與層之間的依賴;
4、有利於標準化;
5、利於各層邏輯的復用。
6、擴充套件性強。不同層負責不同的層面。
7、安全性高。使用者端只能通過邏輯層來訪問資料層,減少了入口點,把很多危險的系統功能都遮蔽了。
8、專案結構更清楚,分工更明確,有利於後期的維護和公升級
缺點:
1、降低了系統的效能。這是不言而喻的。如果不採用分層式結構,很多業務可以直接造訪資料庫,以此獲取相應的資料,如今卻必須通過中間層來完成。
2、有時會導致級聯的修改。這種修改尤其體現在自上而下的方向。如果在表示層中需要增加乙個功能,為保證其設計符合分層式結構,可能需要在相應的業務邏輯層和資料訪問層中都增加相應的**
3、增加了**量,增加了工作量
七層就是比三層多了外觀層(facade),介面層(idal),工廠層(factory),實體層(entity)。
1.外觀層:外觀層,負責整合業務邏輯層的方法,為一些有共性的方法提供統一的介面,以供ui層呼叫。只與業務邏輯層、實體類有關聯關係。
2介面層:對資料訪問層的方法進行抽象,是呼叫資料訪問層方法的介面,提高了系統的可擴充套件、可維護性,更換資料庫等操作更加方便。只與實體類有關聯關係。
3工廠層:工廠層,用於建立介面物件,是業務邏輯層與介面層的橋梁,對二者進行解耦合。
4實體層:主要是用來在各層中傳遞資料。
至於七層的優缺點我覺得應該和三層是差不多的。
三層架構 之三層擴充套件七層
哎,真心不想在這裡寫這篇部落格,本來三層到七層頂多了也就用兩天時間去分析,結果我用了將近四天,最後我都快崩潰了,還有好多問題都是同學幫我找出來的,真是很是汗顏吶!下面是我三層架構擴充套件成七層架構的uml包圖 之前看別人都是用的vb.net版,我就覺得剛學習了c 語言,就先用c 版吧,結果倒好,兩種...
機房重構 七層登入
在前面介紹了三層,ui層 bll層 dal層 這次總結下 七層 在還沒有學習七層的時候,那時候只是認為 七層 只是比三層多了四層而已,其實不然,七層它也是機房重構的登入部分。其實在學習 機房重構的時候 包括在寫任何程式的時候,沒有任何要求說必須使用七層架構,所以說,這就有了我們為什麼要用 七層架構 ...
三層擴充套件七層
在機房合作的過程中,採用三層 ui bll dal 的思想 擴充套件成七層,使用svn合作開發。開發過程中,資料的傳輸,方法的呼叫,那都是重要而頻繁的事了。因為頻繁,如果沒有規劃和管理,混亂就不可避免了,同時造成後期維護巨大的工作量,就像形成惡性腫瘤。由三層擴充套件到七層,正是通過從形式的布局上,盡...