熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

.NET三層架構解析:什麼是三層架構

2013-11-13 10:03:15  來源: .NET編程 
    所謂三層架構是在客戶端與數據庫之間加入了一個中間層也叫組件層這裡所說的三層體系不是指物理上的三層不是簡單地放置三台機器就是三層體系結構也不僅僅有B/S應用才是三層體系結構三層是指邏輯上的三層即使這三個層放置到一台機器上
    在項目開發的過程中有時把整個項目分為三層架構其中包括表示層(UI)業務邏輯層(BLL)和數據訪問層(DAL)三層的作用分別如下
   表示層為用戶提供交互操作界面這一點不論是對於Web還是WinForm都是如此就是用戶界面操作我們網站展示給用戶看的界面
    業務邏輯層負責關鍵業務的處理和數據的傳遞復雜的邏輯判斷和涉及到數據庫的數據驗證都需要在此做出處理根據傳入的值返回用戶想得到的值或者處理相關的邏輯
   數據訪問層見名知意負責數據庫數據的訪問主要為業務邏輯層提供數據根據傳入的值來操作數據庫改或者其它
    以下我簡單介紹下一個用戶管理模塊:
    為了整個項目的開發方便我們在項目中會建幾個類庫SQLHelperBLLDALModel和一個Web網站為了命名清晰我們可以這樣命名這個三個工程(即在解決方案裡添加的類庫):
    業務邏輯層(BusinessLogicLayer)BLL命名空間默認設置為BLL
    數據訪問層(DataAccessLayer):DAL命名空間默認設置為DAL
    SQL幫助類SQLHelper命名空間默認設置為SQLHelper
    另外我們為了數據傳遞的方便通常再添加一個類庫這個類庫是貫穿於整個三層架構中的即實體類通常命名為Model命名空間默認值設置為Models其中封裝的每個類都對應一個實體通常就是數據庫中的一個表如數據庫中的用戶表(custom)封裝為(custom)將表中的每個字段都封裝成共有的屬性
    這樣三層架構的搭建就基本完成了這三層有著非常強的依賴關系
    表示層 ← 業務邏輯層 ← 數據訪問層
    他們之間的數據傳遞是雙向的並且通常借助實體類傳遞數據
    那麼三層架構都有哪些優點呢
    易於項目的修改和維護在項目的開發過程中或者開發後的升級過程中甚至在項目的移植過程中這種三層架構是非常方便的比如項目從Web移植到Form我們只需要將表示層重新做一遍就可以了其余兩層不用改動只需添加到現有項目就可以了如果不采用這種架構只是將代碼寫到表示層那麼所有的編碼幾乎都要重新來了
    易於擴展在功能的擴展上同樣如此如有功能的添加只需把原有的類庫添加方法就可了
    易於代碼的重用這一點就不用解釋了
    易於分工協作開
    還可以加個接口類庫Iinterface 加入設計模式使你的代碼靈活性更好質量更高
    其實當我們做一個項目時我們應該先考慮一下這個項目是不是應該應用三層/多層設計時 先得考慮下是不是真的需要? 實際上大部分程序就開個WebApplication就足夠了 完全沒必要作的這麼復雜 而多層結構 是用於解決真正復雜的項目需求的
From:http://tw.wingwit.com/Article/program/net/201311/12405.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.