設計模式 工廠模式(學習筆記)

2021-08-15 21:15:34 字數 795 閱讀 7209

披薩專案:

要方便專案的擴充套件,要便於維護、要能執行時擴充套件。

披薩族設計:

不足之處:

披薩只能prepare/bake/cut/box操作,增加新功能需要更改原始抽象類,程式擴充套件性低。

簡單工廠模式的設計方案:

定義乙個例項化披薩物件的類,封裝建立物件的**,將例項部分與抽象超類分隔開,放在工廠裡提高擴充套件性。

簡單工廠模式:

定義了乙個建立物件的類,由這個類來封裝例項化物件的行為

披薩專案加盟困惑:

需要建立較多的簡單工廠。

工廠方法模式設計方案:

將披薩專案裡的披薩物件例項化功能抽象成抽象方法,在不同加盟店具體實現功能。

工廠方法模式:

定義了乙個建立物件的抽象方法,由子類決定要例項化的類。工廠方法模式將物件的例項化推遲到子類。

抽象工廠模式:

定義了乙個介面用於建立相關或有依賴關係的物件族,而無需明確指定具體類

工廠模式關鍵點:

1、工廠模式的意義

物件例項化與主程式依賴性解耦。

2、三種工廠模式

簡單工廠模式(例項化在簡單類)

工廠方法模式(例項化在子類中實現)

抽象工廠模式(抽象工廠和子工廠,形成工廠族)

3、依賴抽象原則

1)變數不要持有具體類的引用

2)不要讓類繼承自具體類,要繼承自抽象類或藉口

3)不要覆蓋基類中已實現的方法

設計模式學習筆記 4 工廠模式

工廠模式 定義了乙個建立物件的介面,但由子類決定要例項化的類是哪乙個。工廠方法讓類本例項化推遲大子類。設計原則 要依賴抽象,不要依賴具體類。1.定義pizzastore的抽象類 2.定義pizza的抽象類 3.實現pizzastore類 chicagopizzastore nypizzastore ...

設計模式學習筆記 抽象工廠模式

定義 為建立一組相關或相互依賴的物件提供一組介面,而且無需指定它們的具體類。抽象工廠模式是工廠模式的公升級版本,因為它應對的是更加複雜的業務,即當有多個業務品種 業務分類時,通過抽象工廠模式產生需要的物件是一種非常好的解決方式。由於抽象工廠類較為複雜,我覺得使用乙個具體的例子,更能形象的表達這個模式...

設計模式學習筆記 抽象工廠模式

抽象工廠開始之前,我不得不先說一句,關於工廠方法,我以為不太常用來著。而實際上,想到當年在學校,老師在教三層的時候告訴我們,service 與 dao 層必須都要繼承自介面,並提供乙個實現類,只是神秘的一笑告訴我們,這對 有好處,然而一直到了學期結束也不知道有什麼好處。大概也不知道什麼時間,越寫越多...