我對三層架構的理解

2021-08-24 18:59:06 字數 2218 閱讀 6710

架構**有1多點的時間了吧。但是什麼架構才是真正的好的架構的架構呢?不得而知。

真正的運用於每個系統,作用於每個系統得東西才是好的吧。三層,乙個很通用的架構,其優點,便於**維護和後續開發。說實話,感覺還是有些不敢苟同。便於**維護,如果說到**維護我把dal層和bll(資料訪問層和業務邏輯層)結合成一層也沒有什麼吧。即使涉及後續開發,也只是簡化了。並沒有加重呀。當然,介面還是有一定必要。不是為了好維護,而是為了在進行**結構的時候能指導程式設計師進行**程式的具體實現(其實這一點,很多時候都不會遇見。只有當遇見乙個真正大的**的時候你才會真正的遇見)。下面我簡單的說下三成架構。

dbutility 資料基層

idbutility 資料基層介面

idal 資料層介面

dal 資料層

dalfactory 資料層工廠

bll 業務邏輯層

model 實體層

gui 介面表示層

dbutility

其主要用於在於對資料操作的封裝。在我的這一層裡面。他主要有

sqldbutility 操作sql資料庫的 繼承於idbutility

accessdbutility 操作access資料庫 繼承於idbutility

oracledbutility 操作oracle資料庫 繼承於idbutility

mysqldbutility 操作mysql資料庫 繼承於idbutility

idbutility

其作用,主要是為了定義相關的實現方法。如果只是乙個規模小的**。或者說以後對其他資料庫不會擴充套件的我覺得沒有必要使用這一層。而且這一層也可以完全可以和dbutility和在一起。如果可以,在裡面加上工廠也是可以的。他會直接把方法建立在記憶體裡面,從而減少了消耗。

其主要包括

執行儲存過程方法的封裝

執行sql語句的方法的封裝。

執行事物

idal

其作用主要是定義資料層相關一些方法的實現。

其主要類隨著資料的變化而變化。但是,他首先會包括一些基礎操作。對資料的增 刪 改 查。當然,肯定還會進行擴充套件。例如查詢也分很多種時候。還有就是查詢還會有相應的關聯。

dal當然是對介面的實現了。這裡主要包括對資料訪問層的sql的封裝和引數,執行儲存過程的名稱呼叫。組合具體的sql語句和儲存過程引數。以及呼叫得儲存過程的名稱。

dalfactory

利用介面建立他的實現方法。存放於記憶體裡面。方便以後進行呼叫。同時減少層**之間的耦合度。

bll

這裡是對要呼叫的dal實現資料的組合。和業務邏輯的實現。其實我一直質疑。其存在的意思。這一層完全可以和dal層組合起來。也有的時候覺得,一用起來也有點方便。當你需要操作多個表的時候,在這裡你可以掉dal層的相關**進行組合就可以了。不用在dal那些地方浪費很多的沒有用的**。不過有了這一層。也同樣的浪費了很多**。在實際工作中。很多時候,這裡就只有哪麼幾句return dal.add(model);很浪費人的表情。你說是不是。model層還是gui這一層進行的組合。所以很是讓人鬱悶呢。

model

實體層,其主要包括對應的相關的資料實體的封裝。我們都知道,sql等資料庫都是關係型資料庫,而c#等語言都遵循的是面對物件。但是擁有了model層以後,會讓我們感覺我們操作的不是資料庫。而是相關實體。通過對實體的操作完成對資料庫的操作。當然這一層還包括更多的東西。例如在資料分析的時候,我們分析員工 我們通常會把員工所有資訊放在一起。例如基礎資訊(姓名 身份證號 性別 所在部門 登陸系統密碼)他裡面就包括兩種資訊。一種就是基礎不動的資訊。一種是經常更變的資訊。為了盡可能的減少負擔。我們會把兩種資訊分儲存。這些在進行修改的時候也方便。同時更加的減少和伺服器互動的資料量。不過加重了查詢時候的資料量。所以如果資料量相對很是龐大的時候,我建議還是不要分開。因為資料庫在進行匹配的時候是相當耗費計算機記憶體的。說多了,說到資料分析上面去了。我的意思就是你可能需要在這裡進行兩個表的實體整合到一起。這樣你在操作起來的時候也會方便一些。同時在這裡,你還需要相應的資料的一些驗證。例如長度,型別,資料本身的合法性。

gui

這裡是頁面層。其實這一層不用多說的。他就包括獲取提交資料,驗證提交資料,頁面資料繫結。然後就把資料提交到bll層。

其實除了這些層。很可能還包含一些。例如common公共層。其中包括,一些彈出提示的js的封裝。還有split字串的一些自定義方法的封裝。同時還可能包含乙個mycontrols這樣的一層,其中包括自己的一些控制項的封裝了。例如時間控制項。分頁控制項。

好了。三層就簡單的介紹到這裡。希望大家可以給我一些建議,對這篇文章的建議。讓我及時的更正。

我對三層架構的理解

三層介紹及其的職責 層之間的關係以及規則 三層架構的優缺點總結 概念 資料訪問層 dal 主要負責對資料庫的直接訪問,向上層遮蔽資料庫差異。關係 規則優點 降低維護成本,方便管理。對於不斷變化的系統有著先天的優勢。遮蔽資料庫差異。適合大型專案及合作開發。安全性。缺點執行速度。量大。層次的劃分並不是死...

三層架構理解

檢視文章 三層架構 2008 06 12 15 30 三層架構是 資料層,業務層,表示層。資料層從資料庫中取出 10。業務層按照一定的邏輯 這裡我們舉例取溫度的邏輯 翻譯成 10攝氏度。表示層顯現給使用者 哎呀,今天好冷!層就相當於乙個黑盒子,我們不用知道它內部怎麼實現,只需要知道如何去呼叫它就行了...

三層架構初步理解

恢復內容開始 什麼是三層架構 通常意義上的三層架構就是顯示層 ui 業務邏輯層 bll 資料訪問層 dal ui 顯示層,用來採集使用者使用者輸入輸入的資訊和操作,並向使用者展現特定的業務資料,在ui層中常用的技術有windows form form,control asp.net aspx,mas...