建立型設計模式

2022-10-08 20:12:20 字數 2361 閱讀 1342

定義乙個操作中的演算法的骨架 ,而將一些步驟延遲到子類中。 template method使得子類可以不改變乙個演算法的結構即可重定義該演算法的某些特定步驟。 ——《 設計模式》 gof

某個品牌動物園,有一套固定的表演流程,但是其中有若干個表演子流程可創新替換,以嘗試迭代更新表演流程;

// 不滿足開閉原則 對擴充套件開放 繼承(虛函式覆蓋)

// 擴充套件功能:繼承 (虛函式覆蓋) 組合

class zooshow

private:

void playgame()

protected:

virtual bool show0()

virtual void show2()

virtual void show1()

virtual void show3()

};class zooshowex1 : public zooshow

virtual void show2()

};class zooshowex2 : public zooshow

virtual void show2()

};class zooshowex3 : public zooshow

virtual void show3()

virtual void show4()

};/*

*/int main ()

定義物件間的一種一對多(變化)的依賴關係,以便當乙個物件(subject)的狀態發生改變時,所有依賴於它的物件都得到通知並自動更新。 ——《 設計模式》 gof

氣象站發布氣象資料給資料中心,資料中心經過處理,將氣象資訊更新到兩個不同的顯示終端(a和b);

}// 介面隔離

private:

virtual weatherdata * getweatherdata();

virtual float calctemperature()

std::vectorobs;

};int main()

定義一系列演算法,把它們乙個個封裝起來,並且使它們可互相替換。該模式使得演算法可獨立於使用它的客戶程式而變化。 ——《設計模式》 gof

某商場節假日有固定**活動,為了加大**力度,現提公升國慶節**活動規格;

建立型設計模式

建立型設計模式對類的建立例項化過程進行抽象,將物件的建立和物件的使用分離。簡單工廠模式 使用頻率4星 工廠方法模式 使用頻率5星 抽象工廠模式 使用頻率5星 建造者模式 使用頻率2星 原型模式 使用頻率3星 單例模式 使用頻率4星 toc 簡單工廠模式將物件建立和物件使用相分離,降低了系統耦合度。優...

建立型設計模式

設計模式分為總的來說分為三大類 建立型模式 五種,工廠方法模式 抽象工廠模式 單例模式 建造者模式 原型模式 結構型模式 七種,介面卡模式 裝飾器模式 模式 外觀模式 橋接模式 組合模式 享元模式 行為模式 十一種,策略模式 模板方法模式 觀察者模式 迭代子模式 責任鏈模式 命令模式 備忘錄模式 狀...

建立型 設計模式

單例 單例項,自我例項化,提供全域性訪問點 工廠 不同型別例項由不同工廠建立,當然也有通過乙個靜態方法建立一種例項或通過傳入引數決定生產的例項 這兩種很明顯不方便擴充套件,需修改 抽象工廠 考慮物件有不同維度 如車有型別和顏色 那麼工廠負責產生一類產品 如工廠產生紅車,白車,黑車 那麼型別上可以通過...