22 Bridge橋接(結構型)

22 Bridge(橋接,結構型)

    • 需要類的功能層次結構類的實現層次結構分離爲兩個獨立的類層次結構。然後在它們之間搭建一座bridge。

 

    • 動機:
      • 橋接模式的用意是將抽象與實現解耦,使得二者可以獨立地變化
        • 抽象(Abstraction)不等於接口(Interface),存在於多個實體中的共同的概念性聯繫,就是抽象。接口是一種抽象的方式。
        • 所謂強耦和,就是在編譯時期已經確定的,無法在運行時期動態改變的關聯;所謂弱耦和,就是可以動態地確定並且可以在運行時期動態地改變的關聯。
      • 當抽象可以有幾種可能的實現之一時,通常容納它們的方法是使用繼承。
      • 但是這種方法並不總是足夠靈活。
      • 繼承將實現永久綁定到抽象上,這使得獨立地修改、擴展和重用抽象和實現變得困難。
    • 什麼時候用:
      • 您希望避免抽象及其實現之間的永久綁定。
        • 當實現必須在運行時被選擇或切換時。
      • 抽象和它們的實現都應該通過子類化來擴展
      • 在這種情況下,橋接模式允許您組合不同的抽象和實現,並獨立地擴展它們。
      • 抽象實現中的更改應該不會對客戶機產生影響。
    • 結構:
      • 參與者:
    • 協作:
      • 抽象將客戶端請求轉發給它實現者對象。
    • 後果:
      • 接口和實現解耦
      • 增加了可擴展性
      • 對客戶端隱藏實現細節。
    • 例:

 

 

 

 

 

    • 總結:
      • 抽象方法的繼承子類等價於增加新方法

 

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