設計模式一共有23種,光工廠模式就有三種,剛開始學的時候還能分的清楚,到後面越來越像了,總的來說目的都是為了易維護,易拓展;手段是封裝繼承和多型;原則是上篇部落格寫到的六大原則。但是既然這是前人留下的寶貴經驗並且成文流傳下來我們就應該先站在巨人的肩膀上。下面是通過對比的學習來研究工廠模式。
定義:通過專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。
個人理解:字面上理解工廠的意思就是它是乙個類似於工廠的乙個模式,工廠是用來生產產品的,我們的工廠模式是通過乙個工廠類來「子類」。主要目的是為了封裝邏輯,把業務和介面分開。
特徵**:
public
class subjectfactory
}}subject sbj;
sbj=subjectfactory.createsubject("sbj1");
定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到其子類。
個人理解:把工廠部門化,每個部門就相當於乙個工廠,他們都實現抽象工廠這個介面。
特徵**:
inte***ce ifactory//建立工廠介面
class addfactory:ifactory//加法工廠類
}ifactory ope***ctory = new addfactory();//利用介面實現多型
定義:提供乙個建立一系列相關或相互依賴物件的介面,而無需指定它們具體的類。
個人理解:在工廠方法的基礎上拓展多個介面。
優點:便於交換產品細節,只需要在初始化的時候出現一次;建立例項過程與客戶端分離。
缺點:增加功能的話需要改動太多
措施:用簡單工廠改進抽象工廠
設計模式 工廠三兄弟
當學完設計模式之後,進行總結時,發現有三個很相似的模式,分別是 簡單工廠 工廠方法和抽象工廠,查閱資料後,人們都俗稱 工廠三兄弟 經過對比後發現 他們是乙個層層遞進的過程,如果把抽象工廠比喻成大哥,那麼工廠方法就是二哥,簡單工廠就是三弟。他們都是建立型模式,其主要的功能都是幫助我們把物件的例項化部分...
設計模式 工廠三兄弟
今天主要總結一下工廠三兄弟即 簡單工廠模式 工廠方法模式 抽象工廠模式,看的多了之後有點亂,所以需要及時總結。簡單工廠 定義乙個用於生產物件的類,封裝生產不同的產品例項的細節,使建立物件的邏輯和客戶端分離,客戶端只需向這個類發起請求即可獲得對應的產品例項,而無需關心物件的建立過程。簡單工廠模式主要由...
設計模式 工廠三兄弟
簡單工廠模式 工廠方法模式 抽象工廠模式都屬於建立型模式。這三個模式都是為了解決物件的建立而生。這三個工廠模式就像孿生兄弟一樣,總是讓人傻傻分不清楚。今天就依據個人理解對三個模式總結對比一下。一 定義 模式定義 簡單工廠別名靜態工廠方法 static factory method 模式。在簡單工廠模...