“七层架构”---理论篇
前段時間在做項目的過程中運用到了三層架構。最近在做項目過程中,又將三層架構進行擴充至七層。下面小編為您分享這延伸出來的“七層”。
?
“七層”包括哪些層?
“七層”是在三層架構的基礎之上進行擴充的,所以在“七層”中當然是少不了三層架構中的元素了,“七層”中最基本的三層元素也就有了---數據訪問層(DAL)、業務邏輯層(BLL)、顯示層(UI)。除此以外,擴充出來的四層中,其實有一層在三層架構中也已經存在了,就是沒有單獨劃分出一層,它就是我們在編碼過程中最先定義的實體層(Entity/Model)。這樣“七層”中還剩下新擴充出來的三層(以下將它們稱為“新三層”)---外觀層(Facade)、工廠層(Factory)、接口層(IDAL)。
七層有哪些作用呢?
? ? ? ? ※三層架構中各層的基本作用在“七層”中同樣適用:
數據訪問層:它在整個業務中的作用就是訪問數據系統中的文件,直接與數據庫打交道,實現對數據庫中數據的增刪改查操作,也就是SQL語句的拼接需要在這一層完成。
業務邏輯層:它的主要作用就是將用戶輸入的信息進行判斷,然后進行甄別處理。也就是我們在編碼過程中常用的 if-else 判斷需要在這里完成。
顯示層:它的主要功能就是接收用戶傳輸的數據和顯示數據,直接與用戶打交道,可以在系統運行時提供人機交互式的操作界面。接收用戶的輸入信息和顯示數據業務需要在這一層完成。
實體層:定義數據庫中的字段(private類型),聲明屬性(public類型)用于參數的傳遞。
? ? ?? ※“新三層”加入后,各層的作用又是怎樣的呢?
首先需要明確的是,“新三層”的加入最基本的作用就是在三層架構的基礎之上進行進一步的解耦,更加降低層與層之間的依賴。
實體層:同上。
接口層:在接口層中定義我們實現某一功能的方法,這一層中只有定義好的抽象的方法名,并沒有具體實現該方法的方法體。
數據訪問層:實現接口層的抽象方法,編寫具體實現該方法的方法體。方法體中的作用同上。
工廠層:用工廠+反射的方法,通過設置配置文件信息,達到選取目標數據庫的作用。
業務邏輯層:同上。
外觀層:解耦U層和B層,降低兩個類之間的關聯,提高代碼的可維護性。
顯示層:同上。
七層如何實現關聯呢?
“七層”架構是從整體上對所開發的系統進行設計的,上面只是單獨的介紹了每一層,要想這七層能很好地讓我們的系統跑起來,還需要讓它們之間形成一定的聯系,組合成一個整體來完成系統的開發工作。在三層架構中我們需要為它們添加引用來實現它們之間的關聯,“七層”中同樣如此。
添加引用:
| Entity | 無 |
| IDAL | Entity |
| DAL | IDAL、Entity |
| Factory | IDAL |
| BLL | Entity、IDAL、Factory |
| Facade | Entity、BLL |
| UI | Entity、Facade |
?
到此為止,“七層”最基本的理論知識也就為您分享完了;但只有這些還是遠遠不夠的,在實際項目開發過程中還需要細細品味如何運用它們。接下來小編將會為您分享實際開發中是如何應用“七層”架構的,每一層有著哪些更具體的作用。
?
?
?
總結
以上是生活随笔為你收集整理的“七层架构”---理论篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三层架构-----实践篇-登录小实例
- 下一篇: “七层架构”-----实践篇-登录小实例