設計模式筆記 – 外觀模式

分類

  • 結構型

模式的目的(定義)

  • 簡化客戶類進行複雜操作時,所需要引用的對象數量和需要知道的接口數量
    • 直接調用外觀類的某個接口即可
    • 具體複雜的操作責任下放到外觀類完成

使用場景例子

  • 現在有一個複雜的操作,需要依賴到N個類中的M個接口,這套操作可以被抽象成為一個名為「啟動」函數
    • 而且這套操作可能會被多個用戶所執行
  • 這時候就可以創建一個外觀類,其中包含了這套操作的所有信息
    • 所有用戶只需要引用這個外觀類並調用對應的某個函數就可以完成整套複雜操作
    • 如果沒有這個外觀類,那每一個要完成這套操作的用戶,身上都要包含N個類中的M個接口的所有信息

類圖

參考書目

  • 《Head First Design Patterns》Eric Freeman, Elisabeth Robson, Kathy Sierra, Bert Bates