1. 程式人生 > >從壹開始 [ Design Pattern ] 之三 ║ 工廠模式 與 小故事

從壹開始 [ Design Pattern ] 之三 ║ 工廠模式 與 小故事

 

編者按:

定義一個用於建立物件的介面,讓子類決定例項化哪一個類。工廠方法使得一個類的例項化延遲到子類。

工廠模式,是迄今為止,使用最多,最廣泛的設計模式之一,它的身影幾乎出現在每一個框架和個人程式碼之中。

它是基石,只有充分了解並掌握了工廠模式,才能繼續的向更深層的設計模式進發和努力。

今天的可能有點兒繞,如果有不懂的,可以在文章下邊留言,如果有三個以上評論要我講課的話,我就在直播課堂,給大家講解一下。

同時為了更好的講解,我會稍微穿插一個小故事,讓大家能夠很好的掌握工廠模式的三大步。

 

 一、什麼是工廠模式?

 在上一篇文章中,我們說到了《單例模式》,瞭解到了它的場景,也學會了它的目的,從模式型別上,我們可以知道,他是一個建立型的設計模式,說白了就是建立一個物件的例項,只不過是單例的 —— 單一例項的。

那今天我們繼續說下一個建立型的設計模式 —— 工廠模式,工廠模式和單例模式,正好相反,他不是建立單一的,而是建立無窮的,隨著專案而不斷變化的例項場景。

【工廠模式】,英文名稱:Factory Pattern,是開發中最常用的設計模式之一。這種型別的設計模式屬於建立型模式,它提供了一種建立物件的最佳方式。在工廠模式中,我們在建立物件時不會對客戶端暴露建立邏輯,並且是通過使用一個共同的介面來指向新建立的物件。

從日常使用分類上,工廠模式有三種:

1、簡單工廠模式

2、工廠方法模式

3、抽象工廠模式

不過整體上,思路是類似的,可以統稱為工廠模式,但是一般有人不認為簡單工廠屬於工廠模式,而且同時又把抽象工廠,給單獨提取出來,作為一個新的設計模式,這個無可厚非,今天我們就通過一個生活中的小栗子,然後再配合具體程式碼,一步一步學習工廠模式,從簡單工廠,到工廠方法,最後到抽象工廠。

 

 

 二、簡單工廠模式

 

生活小場景第一集:

老張呢,平時都是一個人住,為了健康生活,經常會自己買菜,洗衣,做飯,週末時不時的就像來點兒花樣(其實並沒有