1. 程式人生 > >設計模式(11)—— 結構型 ——橋接(bridge)

設計模式(11)—— 結構型 ——橋接(bridge)

介紹

  • 定義:將抽象部分與它的具體實現部分分離,使它們都可以獨立地變化
  • 說明:通過組合的方式建立兩個類之間的聯絡,而不是繼承
  • 型別:結構型
  • 適用場景:
    • 抽象和具體實現之間增加更多的靈活性
    • 一個類存在兩個(或多個)獨立變化的維度,且這兩個(或多個)維度都需要獨立進行擴充套件
    • 不希望使用繼承,或因為多繼承導致系統類的個數劇增
  • 優點:
    • 分離抽象部分及其具體實現部分
    • 提高系統的可擴充套件性
    • 符合開閉原則
    • 符合合成複用原則
  • 缺點:
    • 增加了對系統的理解和設計難度
    • 需要正確識別出系統中兩個獨立變化的維度(需要經驗積累)
  • 相關設計模式
    • 橋接模式和組合模式
    • 橋接模式和介面卡模式

程式碼實現

這裡,有個畫筆,顏料,圖形三者類設計的實現:
借鑑它人程式碼,很容易懂。