建立網站-關於中間層

前一篇文章「建立網站-從分層架構開始」解釋了多層式架構的概念,現在,我們針對實作此架構的中間層作討論,瞭解這一層的組成相當重要,建構系統的過程中,你有很多的時間會花在處理這一層的內容上面,整個系統的應用程式邏輯,也都是在這一層處理,當然,資料庫伺服器中的預儲程序也包含了一部份的運算邏輯,不過這就不在我們討論的範圍了。

當然,還是直接截取「「ASP.NET 商業級資料庫網站開發實務」」一書當中的「拆解中間層」一節作說明:

==============================================

當系統規模愈來愈大,為了將中間層的功能進一步單純化,同時提高系統維護的彈性,我們還會依功能將系統進一步切割成兩層:商業邏輯層與資料存取層,列舉說明如下:
  • 商務邏輯層(Business Logic Layer):聯繫資料存取層與展示層,取得資料資料存取層的資料內容,進行資料的維護與存取,將資料公開至展示層,或是執行反向作業,將使用者在網頁上所執行的資料異動,反映至資料存取層。
  • 資料存取層(Data Access Layer):存取底層的資料來源,封裝了存取資料所需的ADO.NET程式碼,也只有這一層能夠直接與資料來源進行溝通。

透過分層設計,存取底層資料來源的程式碼得以進一步與展現層切開,商業邏輯層本身只負責引用資料存取層的類別,不會牽涉資料存取的細節,也因此我們可以有效的對展示層隱藏資料庫架構等重要的相關細節,同時透過資料存取層切換,輕易的針對不同的資料來源進行存取。

無論商業邏輯或是資料存取,從實作的層面來看,均是一些類別的組合,這些類別構成可供外部程式碼引用存取的資料元件,因此對於開發人員來說,建立中間層事實上是一連串類別的開發過程。

資料存取層只是單純的針對資料來源作存取,開發人員可以選擇自行建立類別或是直接利用Visual Studio所提供的視覺化資料集設計師,為我們直接建立所需的資料集。

商業邏輯層則是開發人員根據自身需求,撰寫邏輯運算程式碼所建立的功能類別,負責連結網頁的資料控制項與中間層的資料存取類別。

==============================================

依然是概念性的討論,不過這對於初次接觸多層式架構設計的入門者會有一些幫助,下一次我們討論所謂的展示層。

3 則留言:

百香綠 提到...

版大你好:
請問,如果是新手的話,初學ASP.NET,要走VB.NET路線的參考書目,目前考慮的有版大的【ASP.NET 3.5 精要剖析-using VB】

需要在加購Visual Basic 2008 程式設計學習教本嗎,兩本一起學習,效果是否會比較好?或者先買精要剖析就好?

康廷數位文教網 提到...

hi,百香綠 好 :自學的話,直接看【ASP.NET 3.5 精要剖析-using VB】
就好了,有這本就夠了。

「Visual Basic 2008 程式設計學習教本」是學校用書,內容比較簡化,適合學校用來上課,內容與【ASP.NET 3.5 精要剖析-using VB】重疊,不需要再看了。

GOOD LUCK XD

百香綠 提到...

了解了,很感謝版大的回覆,謝謝。