1. 程式人生 > >企業應用架構模式讀書筆記 第一章 分層

企業應用架構模式讀書筆記 第一章 分層

分層

在分解複雜的軟體系統時,軟體設計者用得最多的技術之一就是分層。

當用分層的觀點來考慮系統時,可以將各個子系統想象成按照“多層蛋糕”的形式來組織,每一層都依託在其下層之上。在這種組織方式下,上層使用了下層定義的各種服務,而下層對上層一無所知。另外,每一層對自己的上傳隱藏其下層的細節。因此,第4層使用第3層的服務,第3層使用第2層的服務,第4層無需知道第2層的細節。(當然,並非所有的分層架構都這麼隔絕,但絕大多數都是不透明的,或至少是幾乎不透明的。)

然而,分層架構中最困難的問題是決定建立哪些層次以及每一層的職責是什麼。

 

 

 

表現邏輯處理使用者與軟體間的互動。

資料來源邏輯主要關注與其他系統的互動,這些系統將代表應用完成相關的任務。

最後一部分就是領域邏輯,也稱為業務邏輯

 

伴隨著分離,還有一條關於依賴性的普遍原則:領域層和資料來源層絕對不要依賴於表現層。也就是說,在領域層和資料來源層的程式碼中,不要出現呼叫表現層程式碼的情況

使用領域邏輯時,其中一個最困難的部分就是區分什麼是領域邏輯,什麼是其他邏輯。一種不太正規的測試辦法就是:假想向系統中增加一個完全不同的新層,例如為Web應用增加一個命令列介面層。如果在這個過程中,發現需要重複實現某些功能,則說明有一些本應該在領域層實現的邏輯,現在在表現層實現了。