三層框架體系

2021-08-17 15:03:31 字數 1610 閱讀 2117

在c\s伺服器上執行的軟體可以是這種樣式的

這是典型的兩層結構,特點是:

1.資料庫訪問和使用者型別判斷邏輯放在一起實現

2.使用者介面層直接呼叫資料訪問實現

3.整個系統功能放在同乙個專案中實現

4.進行業務規則、合法性校驗等工作

雖然看起來比較簡潔,但是在實際中卻有很多問題:如果使用者的需求發生變化,應用程式都需要進行大量修改,甚至需要重新開發,給系統的維護和公升級帶來極大的不便;使用者介面直接訪問資料庫,帶來了很多資料庫資訊保安隱患。

為了克服兩層結構帶來的問題,發展了三層結構體系。所謂的三層結構體系,就是在客戶端和資料庫之間加入了一些中間層,把客戶端和資料庫伺服器分離開了,中間層中包含了業務邏輯層、資料訪問層和資料物件模型層,是把兩層中的客戶端的功能拆分,是邏輯上的三層結構。

三層結構體現了對程式分化的思想,不必為了某乙個方面的改動而導致整個程式的修改,降低了耦合提高了內聚,增強了**的可重用性,同時方便構件不同網路環境下的分布式應用。

三層結構:顯示層(ui)、業務邏輯層(bll)、資料訪問層(dal),核心是業務邏輯層。

顯示層的特點:1.向使用者展現特定業務資料;2.採集使用者的輸入資訊和操作;3.展現給使用者的介面,即使用者在使用乙個系統的時候他的所見所得。設計原則:使用者至上、介面友好、兼顧簡潔。

業務邏輯層的作用:從dal中獲取資料,以供ui顯示用;從ui中獲取使用者指令和資料,執行業務邏輯;從ui中獲取使用者和資料,通過dal寫入資料來源,接收使用者的指令或者資料輸入,提交給應用層做處理,同時負責將業務邏輯層的處理結果顯示給使用者。相比傳統的應用方式,業務邏輯層對硬體的資源要求較低。職責機制:ui->bll->ui;ui->bll->dal->bll->ui,即:dal所在程式集不引用bll和ui;bll需要引用dal;ui直接引用bll,可能會間接引用dal。

資料訪問層作用:主要是負責資料庫的訪問,可以訪問資料庫系統、二進位制檔案、文字文件或xml文件,實現對資料表的資料操作。資料訪問層並不是資料庫,作用是對資料庫中原始資料的操作,是為業務邏輯層或表現層提供資料服務的。

具體應用原則:

dal只提供基本的資料訪問,不包含任何業務相關的邏輯處理;

ui只負責顯示和採集使用者操作,不包含任何的業務相關的邏輯處理;

bll只負責處理業務邏輯,通過獲取ui傳來的操作指令,決定執行業務邏輯,在需要訪問資料來源的時候直接交給dal處理。處理完成後,返回必要資料給ui。

並不是所有的軟體開發都要用到三層結構,當開發的軟體在邏輯上非常簡單,或者沒有真正的資料儲存層即脫離了資料庫的使用,這個時候就沒必要非用三層結構來把簡單問題複雜化;相反開發的軟體邏輯非常複雜或需要資料庫支援的時候,就要考慮用三層結構來簡化開發難度。其實,三層結構和兩層結構都可以實現相同的功能,但是三層的結構更加的解耦,各個模組更加的高內聚低耦合,還可以大幅降低軟體開發中的複雜問題,有利於軟體的順利開發。三層非常有用,在運用時將更加深入的總結三層的用法

三層體系架構

三層體系架構 1.表示層 usl 主要表示web方式,也可以表示成winform方式。如果邏輯層相當強大和完善,無論表現層如何定義和更改,邏輯層都能完善地提供服務。2.業務邏輯層 bll 主要是針對具體的問題的操作,也可以理解成對資料層的操作,對資料業務邏輯處理。如果說資料層是積木,那邏輯層就是對這...

三層開發框架

1 database 資料訪問層 2 business業務邏輯層 3 module業務實體層 4 web層 資料訪問層職責是擴充套件資料型別支援,關鍵點是資料連線物件的唯一性.而業務邏輯層是根據具體的業務邏輯處理資料,關鍵點是根據業務運算元據並把資料反映到資料庫中,在業務邏輯層中可以封裝一些方法象字...

三層開發框架

1 database 資料訪問層 2 business業務邏輯層 3 module業務實體層 4 web層 資料訪問層職責是擴充套件資料型別支援,關鍵點是資料連線物件的唯一性.而業務邏輯層是根據具體的業務邏輯處理資料,關鍵點是根據業務運算元據並把資料反映到資料庫中,在業務邏輯層中可以封裝一些方法象字...