設計模式之—— 工廠模式

 

簡單工廠

螺產品生產的實例(實現)必須依靠工廠裏邊的方法去實現。


 

工廠模式

定義:定義一個創建對象的接口,讓其子類自己決定實例化哪一個工廠類,工廠模式使其創建過程延遲到子類進行。

主要解決:主要解決接口選擇的問題。

何時使用:我們明確地計劃不同條件下創建不同實例時。

如何解決:讓其子類實現工廠接口,返回的也是一個抽象的產品。

關鍵代碼:創建過程在其子類執行。

圖解:

1. 零件工廠需要螺絲, 然後螺絲生產工廠 開了一條流水線,讓製造螺絲,輸出螺絲。(注意上下的繼承關係)

2. 注意,螺絲工廠接到任務後他纔開始製造螺絲的。(螺絲生產工廠是機牀工廠的子類)這就是所說的創建過程延遲到子類進行。

// controller

工廠 *obj = [螺絲工廠 new];
零件  = [obj product螺絲];



// 螺絲工廠
-(零件) product螺絲() {
  製造螺絲 *_螺絲 = [製造螺絲 new];
  零件  = [_螺絲 開始製造];
  return  零件 ;
}

 

抽象工廠

    1. 通過對象組合創建抽象產品

    2. 創建多個系列產品

    3. 必須修改父類的接口才能支持新的產品

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章