天天看點

【設計模式系列學習筆記】12、 外觀模式 Facade

外觀模式Facade,為子系統中的一組接口提供一個一緻的界面,此模式定義了一個高層接口,這個接口使得這一子系統更加容易使用。

為子系統提供統一入口,封裝子系統複雜性,便于用戶端調用;

外觀模式,完美的展現了依賴倒轉原則和迪米特法則的思想,是非常常用的模式之一;

使用場景:

  • 設計初期階段,應該要有意識的将不同的兩個層分離,比如經典的三層架構,資料通路層、業務邏輯層、表示層,層與層之間建立外觀Facade;
  • 開發階段,子系統往往因為不斷的重構演化而變得越來越複雜,增加外觀Facade可以提供一個簡單的接口,減少它們之間的依賴;
  • 在維護一個遺留的大型系統時,可能這個系統已經非常難以維護和擴充了,但功能非常重要,新需求依賴于它;可以為新系統開發一個外觀Facade類,來提供設計粗糙或高度複雜的遺留代碼的比較清晰簡單的接口,讓新系統與Facade對象互動,Facade與遺留代碼互動所有複雜的工作。
【設計模式系列學習筆記】12、 外觀模式 Facade

代碼詳見

https://git.lug.ustc.edu.cn/hellboy0621/transformer_gof23.git

com.transformer.facade.Facade