我記得看的閻宏發表在天極網上的文章上舉的例子挺好的,他以一個后花園為例講解的:
(工廠模式有簡單工廠模式,工廠方法模式和抽象工廠模式幾種形態。)
一開始只在后花園中種蔬菜類的時候可以用簡單工廠模式,由工廠負責生成具體的蔬菜類,
但是如果后花園要引進水果類的時候簡單模式就行不通了,因此需要使用工廠方法模式,將產品類族分開。
但是如果后花園的規模繼續擴大到地域范圍的分割時,比如說一個在北京,一個在上海的時候,工廠方法模式就不夠了,因為對兩個后花園來說,每個后花園的植物是要被種在一起的,并且兩個后花園用工廠方法模式是無法體現其區別的。
我個人認為抽象工廠和工廠方法的最大區別應該是抽象工廠提取了各個工廠方法的共性,并且能夠確保工廠方法中產生的產品類能夠在一起工作。
(工廠模式有簡單工廠模式,工廠方法模式和抽象工廠模式幾種形態。)
一開始只在后花園中種蔬菜類的時候可以用簡單工廠模式,由工廠負責生成具體的蔬菜類,
但是如果后花園要引進水果類的時候簡單模式就行不通了,因此需要使用工廠方法模式,將產品類族分開。
但是如果后花園的規模繼續擴大到地域范圍的分割時,比如說一個在北京,一個在上海的時候,工廠方法模式就不夠了,因為對兩個后花園來說,每個后花園的植物是要被種在一起的,并且兩個后花園用工廠方法模式是無法體現其區別的。
我個人認為抽象工廠和工廠方法的最大區別應該是抽象工廠提取了各個工廠方法的共性,并且能夠確保工廠方法中產生的產品類能夠在一起工作。
久久不醉