設計模式 外觀模式

2021-08-25 02:48:18 字數 938 閱讀 8849

最近在機房重構,因為需要在機房重構中新增設計模式,而且最近設計模式的學習也是非常的火熱,所以把大話設計模式這本書又重新開啟學習,在進行了一段時間重構之後再來看設計模式,理解的更深刻了,而不是像當初第一遍看的時候只是知道一些概念性的東西,但是具體怎麼應用卻無從下手,理論結合實踐才是硬道理!

外觀模式:為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。

外觀模式遵循依賴倒轉原則和迪公尺特法則。

依賴倒轉原則:

1、高層模組不應該依賴低層模組,倆個都應該依賴抽象。

2、抽象不應該依賴細節,細節應該依賴抽象。

迪公尺特法則:如果倆個類不必彼此直接通訊,那麼這倆個類就不應當傳送直接的相互作用,如果其中乙個類需要呼叫另乙個類的某乙個方法的話,可以通過第三者來**這個呼叫。

個人理解:

在機房重構中,facade層其實就相當於乙個橋梁將ui層與業務邏輯層間接聯絡起來,u層需要使用bll層的方法時借助facade來實現,從而實現了u層與b層之間的依賴關係,達到降低耦合的目的。

外觀模式結構圖:

外觀類相當於乙個介面,當客戶端需要用乙個類中的方法時,不直接呼叫這個類中的方法,而是定義乙個介面,在介面中需要包含客戶端需要呼叫的方法,這樣客戶端來呼叫介面中的方法就可以間接使用類中的方法,此時客戶端也不需要知道類中方法是如何具體實現的,從而達到了解耦的效果。

1、三層架構中為了降低層與層之間的耦合可以提供乙個介面,使用外觀模式來降低耦合。

2、系統因為重構越來越複雜,可以增加乙個外觀facade提供介面來減少依賴。

3、在舊系統的基礎上開發乙個新系統時,如果舊系統中原有的**設計粗糙**複雜,就可以在新系統中增加乙個外觀來提供介面,讓新系統和facade物件互動,從而利用舊系統中的**。

設計模式 外觀模式

外觀模式,我的理解就是將複雜的類進行重新封裝,將簡單的介面呈現出來,降低呼叫端和實際類的耦合性。拿 大話設計模式 上邊關於 和 的例子來說。對於不入門的股民來說,交易有些過於龐大,需要學習的東西很多,如果沒整明白就進行投資,很容易賠錢的。很多剛入 的股民都賠的很慘。而買 有提出了乙個新的觀念,我們買...

設計模式 外觀模式

何為外觀模式?外觀模式 為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得一子系統更加容易使用。它是一種結構型模式,它主要解決的問題是 元件的客戶和元件中各種複雜的子系統有了過多的耦合,隨著外部客戶程式和 各子系統的演化,這種過多的耦合面臨很多變化的挑戰。uml類圖 乙個...

設計模式 外觀模式

外觀模式說白了就是為一組介面提供乙個一致的介面。例如 定義三個類a b c,每個類各定義乙個方法。class a pubic void showa cout a showa pubic void showb cout b showb pubic void showc cout c showc 定義乙...