設計模式-外觀模式

使用的動機:一、在我們編寫代碼的時候,大部分都會將不同的層次細分,那麼增加一箇中間者Facade,可以減少各層次之間的耦合,方便調用。

                     二、在系統的開發中,代碼量增加,各個類間的耦合,可以在其中增加一個外觀Facade,減少各自的依賴。

                     三、在重構粗糙高度複雜的遺留代碼時,在不瞭解次模塊下的各自細節,直接進行擴展或者修改會比較困難,使用外觀Facade作爲遺留代碼的交互,新的功能在外觀基礎上進行開發會相對簡單一些。

總而言之,外觀Facade是通過一個間接的形式,讓複雜的代碼之間可以減少耦合和依賴,方便後續的開發和維護。而通常我們對於經驗不足的開發者來說,經常會直接讓多個不同層次(這裏是層次,並不代表每個類直接都要有一個Facade)直接進行耦合或相互依賴,在後期改動代碼時,沒有一個間接的類來幫助可能會讓成本提高。

通過這個圖,使用外觀Facade可以比較清晰的處理新功能與遺留代碼直接的關係。

 

總結自:《大話設計模式》外觀模式

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章