這次要講的這個模式其實在我們日常編寫**的過程中非常常見,在物件導向程式設計中,我們幾乎無時無刻不在用它,它就是外觀模式。在進入講解之前,我們先來了解乙個設計原則,這就是迪公尺特法則。
迪公尺特法則,如果兩個類不必彼此直接通訊,那麼這兩個類就不應當發生直接的相互作用,如果其中的乙個類需要呼叫另乙個類的某乙個方法的話,可以通過第三者**這個呼叫。迪公尺特法則其實和前面提到的依賴倒置原則有些類似,都是強調類之間的松耦合,面向介面設計。
外觀模式,為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這個子系統更加容易使用。在我們設計**之初,就應該有意識的將不同的兩個層分開,在**開發階段,增加「外觀」可以提供乙個簡單的介面,減少他們之間的依賴,在維護過程中,為新系統提供乙個「外觀」,來提供設計粗糙或高度複雜的遺留**的比較清晰的簡單介面,讓新系統和外觀類物件互動,外觀類與遺留**互動所有複雜的工作。一下是外觀模式的結構圖
設計模式 外觀模式
外觀模式,我的理解就是將複雜的類進行重新封裝,將簡單的介面呈現出來,降低呼叫端和實際類的耦合性。拿 大話設計模式 上邊關於 和 的例子來說。對於不入門的股民來說,交易有些過於龐大,需要學習的東西很多,如果沒整明白就進行投資,很容易賠錢的。很多剛入 的股民都賠的很慘。而買 有提出了乙個新的觀念,我們買...
設計模式 外觀模式
何為外觀模式?外觀模式 為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得一子系統更加容易使用。它是一種結構型模式,它主要解決的問題是 元件的客戶和元件中各種複雜的子系統有了過多的耦合,隨著外部客戶程式和 各子系統的演化,這種過多的耦合面臨很多變化的挑戰。uml類圖 乙個...
設計模式 外觀模式
外觀模式說白了就是為一組介面提供乙個一致的介面。例如 定義三個類a b c,每個類各定義乙個方法。class a pubic void showa cout a showa pubic void showb cout b showb pubic void showc cout c showc 定義乙...