本文參考1:
本文參考2:
軟體領域中的設計模式為開發人員提供了一種使用專家設計經驗的有效途徑。設計模式中運用了物件導向程式設計語言的重要特性:封裝、繼承、多型,真正領悟設計模式的精髓是可能乙個漫長的過程,需要大量實踐經驗的積累。最近看設計模式的書,對於每個模式,用c++寫了個小例子,加深一下理解。主要參考《大話設計模式》和《設計模式:可復用物件導向軟體的基礎》兩本書。本文介紹工廠模式的實現。
工廠模式屬於建立型模式,大致可以分為三類,簡單工廠模式、工廠方法模式、抽象工廠模式。聽上去差不多,都是工廠模式。下面乙個個介紹,首先介紹簡單工廠模式,它的主要特點是需要在工廠類中做判斷,從而創造相應的產品。當增加新的產品時,就需要修改工廠類。有點抽象,舉個例子就明白了。有一家生產處理器核的廠家,它只有乙個工廠,能夠生產兩種型號的處理器核。客戶需要什麼樣的處理器核,一定要顯示地告訴生產工廠。下面給出一種實現方案。
enum ctype ;
class singlecore
; //單核a
class singlecorea: public singlecore
; //單核a
class singlecorea: public singlecore
; class singlecorea: public singlecore
{ public:
void show() { cout<
至此,工廠模式介紹完了。利用rational rose 2003軟體,給出三種工廠模式的uml圖,加深印象。
簡單工廠模式的uml圖:
工廠方法的uml圖:
抽象工廠模式的uml圖:
工廠模式 (C )
1 uml設計圖 2 核心實現 public static insurancefactorygetinsurancefactory string type else if type.equals 汽車損壞 else if type.equals 財產安全 else if type.equals 人員...
c 工廠模式
將乙個複雜的物件的構建和其部件分離,將耦合度降到最低。換句話說,就是當初始化乙個物件需要很多步驟 複雜工作時,不要使用new來建立物件,而是通過工廠模式抽象出來專門生成物件的一種方法。量會增加,但耦合度降低 維護方便。工廠模式設計思路 工廠類負責對產品類的建立,即產品類不能直接例項,不能new,產品...
c 工廠模式
簡單寫了乙個工廠模式 在這種模式下,有新增的類時,fileaccessfasctory.h 和filework,cpp這兩個檔案是穩定的,不需要修改,只需要修改fileaccess.h和fileaccess.cpp,或者新增檔案,這樣就在業務邏輯中隔離變化 同時也可以實現增量編譯,也不會影響業務 的...