.NET企業級系統架構設計

weixin_34262482發表於2011-11-10

.NET設計層面上的體系架構,如1.1圖是從設計層面上劃分的.NET體系架構。


1.1

軟體設計的原則是為了提高軟體系統的可複用性和可擴充套件性,我們採用的手段是為應用系統劃分層次,這是一種邏輯上的劃分不是物理上的劃分,也就是這些層可以是在一臺電腦上也當然可以分佈到在多臺電腦上。這些層之間是鬆耦合的,層的內部是高內聚的。因此,降低耦合是軟體設計的目標,能夠設計出低耦合的系統,就意味著我們的系統具有可複用性和可擴充套件性了。

1.1.1 表示層

表示層(Presentation Layer)是使用者與系統互動的元件集合,使用者通過這一層向系統提交請求或發出指令,系統通過這一層接收使用者請求或指令,然後,將指令消化吸收後呼叫下一層,再將呼叫的結果展現到這一層。表示層應該是輕薄的不應該具有業務邏輯,如果在表示層中採用Windows Form技術就是我們熟悉的桌面系統。如果在表示層中採用ASP.NETHTML等技術,這就是我們說的Web系統,這時候我們將表示層也稱為Web層。但是不論採用什麼技術表示層都應該是輕薄的。

1.1.2 業務邏輯層

業務邏輯層(Business Logic Layer)是系統的核心業務處理層的元件集合,負責接收表示層的指令和資料,消化吸收後,進行組織業務邏輯的處理,並將結果返回給表示層。為了降低表示層和業務邏輯層的耦合問題,我們會在兩層之間引入介面,然後在執行期注入依賴關係。

1.1.3 資料訪問層

資料訪問層(Data Access Layer)是業務邏輯層用於訪問資料層的元件集合,從設計規範上講為了降低耦合度,業務邏輯層不應該具有訪問資料庫的程式碼,訪問資料層的程式碼應該放到資料訪問層中,在資料訪問層中一般是通過DAO(資料訪問物件)訪問資料層的,也是為了降低耦合度,DAO被設計為介面,DAO實現部分中可以通過ADO.NET技術,也可以使用一些框架如NHibernate等。

1.1.4 EIS

EIS層是企業資訊系統層,是系統的資料來源,可以是資料庫、檔案(例如CSVXML檔案等)和遺留系統(資料來源別的系統),但多數情況下是指的是資料庫。

 

相關文章