Bridge
范式是一個
Object Structural
范式
Bridge
范式是把一致抽象和具體實現抽象,分別使用兩個不同的類層次圖進行設計;同時每個層次圖的子類的擴展的操作依賴于所屬類層次圖的父類;除此而外,一致抽象需要具有具體實現抽象的引用。
作為最后一點,可以參考使用創建型范式的任何一個,但我個人認為是
Factory Method
較為普遍。
從這個圖,可以看到Bridge的真實含義。圖中“一致抽象”和“具體實現抽象”是河的兩岸,線“imp<Bridge>”就是客戶從“一致抽象”岸到達“具體實現抽象”岸的橋梁。盡管客戶過去了,但客戶并不知道橋的實現細節。
class WindowImp;
class?Window {
??? protected:
??????? virtual WindowImp* getImplementor();
??? private:
??????? WindowImp bridge;
??????? ...
};?