面試必備之簡單工廠模式

2021-10-07 03:20:28 字數 1189 閱讀 7620

簡單工廠模式屬於類的建立型模式,又叫做靜態工廠方法模式,但不屬於23種fog設計模式之一。通過專門定義乙個工廠類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。

1.工廠(creator)角色

1.簡單工廠模式的核心,它負責實現建立所有例項的內部邏輯。工廠類可以被外界直接呼叫,建立所需的產品物件。

2.抽象(product)角色

簡單工廠模式所建立的所有物件的父類,它負責描述所有例項所共有的公共介面。

3.具體產品(concrete product)角色

uml類圖如下:

0)//可以新增其他水果

else}}

;int

main()

優點:工廠類是整個模式的關鍵所。它能夠根據給定的資訊,決定究竟應該建立哪個具體類的物件。使用者在使用時可以直接根據工廠類去建立所需的例項,而無需了解這些物件是如何建立以及如何組織的。有利於整個軟體體系結構的優化。

缺點:

簡單工廠模式的缺點也正體現在其工廠類上,由於工廠類集中了所有例項的建立邏輯,所以「高內聚」。另外,當系統中的具體產品類不斷增多時,可能會出現要求工廠類也要做相應的修改,擴充套件性並不很好,不符合設計模式的開放封閉原則

簡單工廠的應用場景主要是:客戶端並不知道將要建立的例項是什麼時。

例如:當編寫一款軟體時,後期會對其進行功能模組拓展,且個模組屬於不同性質,抽象類並不相同,而此前並不知道今後拓展的模組怎樣建立,則此時使用簡單工廠模式。

面試必備之抽象工廠模式

抽象工廠模式可以向客戶端提供乙個介面,使得客戶端在不必指定產品的具體型別的情況下,能夠建立多個產品族的產品物件。抽象工廠模式是所有形態的工廠模式中最為抽象和最其一般性的。工廠模式只能生產乙個產品。例如 產品要麼香蕉 要麼蘋果,但抽象工廠可以一下生產乙個產品族,如水果 動物 蔬菜等。1.抽象工廠 cr...

設計模式 工廠模式之簡單工廠

工廠模式可以分為 簡單工廠模式 普通工廠模式 靜態工廠模式 抽象工廠模式 簡單工廠模式 就是如何去例項化物件的問題,對於很容易變化的問題,應該考慮用乙個單獨的類來做這個創造例項的過程,這個單獨的類就是工廠 例子 通過簡單工廠建立各種圖形的實現過程 簡單工廠模式建立步驟 建立乙個介面 例 圖形介面 建...

設計模式 工廠模式之簡單工廠

我們常見的設計模式,大致可以分為三大類 建立型 結構性 行為型。工廠模式,屬於建立型。工廠模式到底起的是什麼作用呢?概括來說就是解耦。當某一類物件需要頻繁建立的時候,就會和程式產生比較大的耦合,在物件初始化屬性較多時,工廠模式可以較少這種耦合,這就是他的作用。一般情況下根據場景不同,工廠模式有幾種不...