1 前言
如果想要設計在不同操作系統上顯示同一類型窗口的接口。多數時候,基本的窗口由線和矩形構成。操作系統A畫線和矩形的方式不同於操作系統B。如果對每個類型的窗口都進行具體的實現,激增的類層次結構會大得驚人。解決這個問題的一個方法是,從針對不同操作系統的每個實現中,分離出不同窗口類型的抽象。幫助解決這一設計問題的設計模式稱為橋接(Bridge)模式。
2 詳述
2.1 簡述
橋接模式的目的是把抽象層次結構從其視線中分離出來,使其能夠獨立變更。抽象層定義了供客戶端使用的上層的抽象接口。實現層次結構定義了供抽象層次使用的底層接口。實現類的引用被封裝於抽象層的實例中時,橋接就形成了。
2.2 何時使用
(1)不想在抽象與其實現之間形成固定的綁定關系(這樣就能在運行時切換實現);
(2)抽象及其實現都應可以通過子類化獨立進行擴展;
(3)對抽象的實現進行修改不應影響客戶端代碼;
(4)如果每個實現都需要額外的子類以細化抽象,則說明有必要把他們分成兩個部分;
(5)想在帶有不同抽象接口的多個對象之間共享一個實現。
3 結語
橋接模式是把一個接口是配到不同的接口的一種方式。
以上是所有內容,希望對大家有所幫助。