以下內容主要參照《大話設計模式》以及一些自己的理解
1.簡單工廠
特點:所有產品類例項由乙個簡單工廠生產,一旦增加新的產品類,需要修改簡單工廠類(違背了開放-封閉原則),但是客戶端不需要修改
2.工廠方法
特點:乙個產品類例項由其對應的工廠類生產,增加乙個新的產品類,只需要新增對應的工廠類,不需要修改**,但是客戶端**需要修改
3.抽象工廠
特點:乙個工廠可以生產多個產品類例項,例如華為工廠可以生產華為路由器、華為手機(華為路由器又屬於路由器(下邊還有思科路由器等),華為手機屬於手機(下邊還有小公尺手機等))
新增乙個產品時,需要新增產品介面、具體產品類,修改工廠介面,修改或新增具體工廠類
適用於交換產品系列,例如在客戶端修改ifactory factory=new accessfactory();
《大話設計模式》中給出一種方法改善:使用簡單工廠結合反射機制改善抽象工廠
工廠設計模式之簡單工廠 工廠方法
1 工廠設計模式的作用 將建立者和呼叫者進行分離 我們經常是建立物件之後再呼叫 2 簡單工廠模式,乙個工廠生產很多物件 最常用 3 工廠方法 在簡單工廠的基礎之上更加細分,分為幾個工廠 1 定義電腦介面,依賴倒置原則,即面向介面程式設計 public inte ce computer 2 定義hp和...
設計模式之簡單工廠,工廠方法模式
qt暫時斷了,專案上暫時不用。這段時間回顧以前寫的 不忍直視,現在的也好不 去,索性看看設計模式吧,就當練內功了 啦啦。廢話不說上 c 設計乙個簡單的計算器,只實現加減,其他的暫不考慮,namespace my factory private double dnumbera 0 private do...
簡單工廠設計模式和工廠方法設計模式
不論學習哪乙個設計模式,都要知道設計模式可以給我們帶來哪些好處,以及我們為什麼要學習設計模式。根據老師教導以及個人的片面經驗,我認為使用設計模式的目的是 增強 的復用性以及可維護性。可維護性就是以後是否方便擴充套件,增加了新的需求的話,是否好改,會不會出現非常難處理的問題,比如說 沒有很好地復用,構...