基本介紹
理解三層結構
我們用三層結構主要是使項目結構更清楚,分工更明確,有利於後期的維護和升級.
三層結構包含:表示層(USL),業務邏輯層(BLL),數據訪問層(DAL)
1:數據訪問層:主要是對原始數據(資料庫或者文本檔案等存放數據的形式)的操作層,而不
是指原始數據,也就是說,是對數據的操作,而不是資料庫,具體為業務邏輯層或表示層提供數據服務。
2:業務邏輯層:主要是針對具體的問題的操作,也可以理解成對數據層的操作,對數據業務邏
輯處理,如果說數據層是積木,那邏輯層就是對這些積木的搭建。
3:表示層:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表現成
:aspx,如果邏輯層相當強大和完善,無論表現層如何定義和更改,邏輯層都能完善地
提供服務。
區分方法
1:數據訪問層:主要看你的數據層裡面有沒有包含邏輯處理,實際上他的各個函式主要完成
各個對數據檔案的操作。而不必管其他操作。
2:業務邏輯層:主要負責對數據層的操作。也就是說把一些數據層的操作進行組合。
3:表示層:主要對用戶的請求接受,以及數據的返回,為客戶端提供應用程式的訪問。
結構說明
完善的三層結構的要求是:修改表現層而不用修改邏輯層,修改邏輯層而不用修改數據層
.否則你的套用是不是多層結構,或者說是層結構的劃分和組織上是不是有問題就很難說.
不同的套用有不同的理解,這是一個概念的問題.
以下是一些個人感想
是的,這是一個比較抽象的問題,但是看看應能明白了.
業務邏輯層,就是把你的代碼中大量出現的組合成一個函式,以後當你需要使用這些代碼時,直接調用函式即可.比如.NET中有大量連線資料庫的代碼(基本上都差不多),我們就可以直接用一個用戶控制項來定義一下這樣代碼.以後當我們要連線資料庫時,直接調用這些函式就可以了.這些東西就可以叫做邏輯或者中間件.以後我們修改資料庫的連線代碼時,直接修改這些用戶控制項就可以了.
三層結構不是.NET的專利,也不是專門用在資料庫上的技術。它是一種更加普適的架構設計理念。數據-邏輯-界面。在實際套用中還會根據需要多出傳遞數據的層,接口層等等。
優缺點
優點
1、無需開發客戶端軟體,維護和升級方便。
2、可跨平台操作。
3、具有良好的開放性和可擴充性。
4、便於資料庫移植。
5、安全性好
6、資源重用性好。
缺點
有時會導致級聯的修改。這種修改尤其體現在自上而下的方向。如果在表示層中需要增加一個功能,為保證其設計符合分層式結構,可能需要在相應的業務邏輯層和數據訪問層中都增加相應的代碼。
相對於不分層的編程方法,使用三層或多層架構的套用於程式運行效率低,代碼量大,難度增加。
相關概念
1、表現層(UI):通俗講就是展現給用戶的界面,即用戶在使用一個系統的時候他的所見所得。
2、業務邏輯層(BLL):針對具體問題的操作,也可以說是對數據層的操作,對數據業務邏輯處理。
3、數據訪問層(DAL):該層所做事務直接運算元據庫,針對數據的增添、刪除、修改、查找等。