簡析.net|簡析.net 3層或多層架構
發表時間:2023-07-26 來源:明輝站整理相關軟件相關文章人氣:
[摘要]簡析.net 三層或多層架構 .net 三層架構,其實該架構也可以用于其它的語言,只是語言的不同,但其原理是相同的,下面簡單介紹一下的結構: 三層其實大家都能講的出來,但是不是所有的人都能把內在的東...
簡析.net 三層或多層架構
.net 三層架構,其實該架構也可以用于其它的語言,只是語言的不同,但其原理是相同的,下面簡單介紹一下的結構:
三層其實大家都能講的出來,但是不是所有的人都能把內在的東西說清楚,我曾經面試一些人叫他們把三層的原理講一下,都是這樣描述的,三層:表示層,邏輯層,數據層。至于怎么去組織這層與層的關系,怎么去區分這這三層,代碼怎么仿制,他的好處在哪里,就說的不是很清楚了。
下面我簡單的介紹一下三層的一些細節的地方,在實際的項目中怎么去組織:
1.三層:表示層,邏輯層,數據層。需要在解決方案里建立五個項目(都是類庫),當然命名也是需要規范的,
比如:公司名.項目名.類庫名,實例:Zbird.ERP.BLL
具體的項目名是:
1.Zbird.ERP.IDAL(數據訪問接口)。
2.Zbird.ERP.DAL(數據層,操作數據的)。
3.Zbird.ERP.BLL(邏輯層,具體的邏輯),其中這里最好是再建立一個文件夾,比如(Entity_BLL)
4.Zbird.ERP.Model(實體映射)。
4.Zbird.ERP.DALFactory(數據工廠),為了解耦所以需要加這一層。
重文件夾的意思能看的出來是數據訪問的邏輯。其它的業務邏輯就可以直接放在外面。
如果還要繼續分的話比如:Zbird.ERP.Utility,把一些公用的類放的這里。如果有控件或者有其它的再繼續分,
比如Zbird.ERP.WebControls。
說到這里你可能要問,那表示層到哪里去了,表示層其實一個概念,至于你要怎么展現數據,就需要建立對應的層,比如是用winform,或是web,或是console,等都可以的,這也是為什么要建立三層的其中原因之一。
下面介紹一下項目之間的引用關系。
從數據層開始,這是最底層的東西,需要引用實體映射,也就是model 層,還有實體接口 IDAL,這也是一個關系約束,如果有些公用的類庫,可能就需要引用公用的類庫,
邏輯層:需要引用model 層,數據訪問層DAL,還有實體接口 IDAL ,數據工廠DALFactory,如果有些公用的類庫,可能就需要引用公用的類庫,
表示層: 需要引用model 層 ,邏輯層BLL ,如果有些公用的類庫,可能就需要引用公用的類庫。
要需要注意的是不要亂引用項目,這樣就是失去三層的意思。
下面介紹一下,使用該架構的好處:
1.可以靈活的切換表示層。
2.適合團隊開發。
3.靈活的切換數據庫。
4.項目關系解耦。
5.容易上手。
關于三層架構就介紹到這里,只要還有一些細節的地方需要自己再想一想,如果有問題可以與我聯系,
E-Mail:[email protected]
學習教程快速掌握從入門到精通的電腦知識