對工廠方法和簡單工廠的總結

2021-06-19 23:24:28 字數 765 閱讀 8209

簡單工廠模式的優缺點?

優點:簡單工廠模式能夠根據外界給定的資訊,決定究竟應該建立哪個具體類的物件。

通過它,外界可以從直接建立具體產品對 象的尷尬局面中擺脫出來。 

外界與具體類隔離開來,偶合性低。 

明確區分了各自的職責和權力,有利於整個軟體體系結構的優化。 

缺點:工廠類集中了所有例項的建立邏輯,容易違反graspr的高內聚的責任分配原則 

雖然簡單工廠模式能夠適應一定的變化,但是它所能解決的問題是遠遠有限的。

它所能建立的類只能是事先教考慮到的,如果需要新增新的類,則就需要改變工

廠類了。(這個問題在工廠方法模式將得到很好的解決) 

應用情景:

工廠類負責建立的物件比較少 

客戶只知道傳入了工廠類的引數,對於始何建立物件(邏輯)不關心 

2、簡述簡單工廠模式與工廠模式的異同?

(1)簡單工廠模式

將產品抽象出乙個介面,在工廠函式中使用 switch-case 判斷生產哪個具體產品,

並返回具體產品的父介面引用。

(2)工廠方法模式

a:除將產品抽象出乙個介面以便實現多型,還將不同的工廠進行細分,統一繼承

自乙個介面,將簡單工廠中的判斷移至客戶端。實現了 開-閉原則。

b:客戶端若使用乙個工廠物件生產多個產品,簡單工廠需要修改每個生產函式的

引數,工廠方法模式只需修改初始化語句。

簡單工廠和工廠方法

當我們在實際開發的過程中,經常會用到new這個關鍵字,需要用到什麼類,就new什麼類,非常的方便,但是我們在享受這種便利的同時,這種便利也給我們帶來了一些麻煩 於是我們引入了簡單工廠來解耦 先假設以下情景,假如你有一家飲品店,使用者要自己點飲料 我們先看看如果不用工廠模式我們該怎麼實現這個需求,下面...

簡單工廠和工廠方法

這學期開始開設設計模式這門課,剛開始一直理解不了什麼是簡單工廠什麼是工廠方法,就在自己敲完 後頓悟!工廠方式不在工廠類中進行邏輯判斷,程式可以為不同產品類提供不同的工廠,不同的工廠類和產不同的產品。當使用工廠方法設計模式時,物件呼叫者需要與具體的工廠類耦合 下面來看看兩者的直觀區別 簡單工廠 工廠方...

簡單工廠,工廠方法和抽象工廠的區別總結

最近這三個模式有點搞混了,而且網上也有類似情況。總結一下。簡單工廠 嚴格說並不是乙個設計模式。簡單工廠沒有抽象類,只有乙個具體工廠類如myfactory,然後myfactory裡面有個工廠方法createproduct返回乙個基類產品,具體返回什麼具體例項通過傳入引數然後用case判斷。用手機生產做...