天天看點

橋接模式(八)

橋接模式(Bridge模式)是指:将實作與抽象放在兩個不同的類層次中,使兩個層次可以獨立改變

是一種結構型模式

Bridge模式基于類的最小設計原則,通過使用封裝、聚合及繼承等行為讓不同的類承擔不同的職責。它的主要特點是把抽象(Abstraction)與行為實作(Implementation)分離開來,進而可以保持各部分的獨立性以及應對他們的功能拓展。

橋接模式(八)

client類;橋接模式的調用者

抽象類(Abstraction):維護了Implementer/即它的實作類CA和CB,二者是聚合關系,Abstraction充當橋接類

RefinedAbstraction:是Abstraction抽象類的子類

implementor:行為實作接口

ca,cb行為的具體實作類

橋接模式(八)

類圖

橋接模式(八)

實作代碼

實作了抽象和實作部分的分離,進而極大的提供了系統的靈活性,讓抽象部分和實作部分獨立開來,這有助于系統進行分層設計,進而産生更好的結構化系統。

對于系統的高層部分,隻需要知道抽象部分和實作部分的接口就可以了,其它的部分由具體業務來完成。

橋接模式替代多層繼承方案,可以減少子類的個數,降低系統的管理和維護成本。

橋接模式的引入增加了系統的了解和設計難度,由于聚合關聯關系建立在抽象層,要求開發者針對抽象進行設計和程式設計

橋接模式要求正确識别出系統中兩個獨立變化的次元(抽象、和實作),是以其使用範圍有一定的局限性,即需要有這樣的應用場景。

橋接模式其它應用場景

對于那些不希望使用繼承或因為多層次繼承導緻系統類的個數急劇增加的系統,橋接模式尤為适用.

繼續閱讀