緊接著上一篇隨筆介紹Simple Factory,如果我們需要create各種各樣的Pizza,我們可以在PizzaFactory里面的factoryPizzaCreation( )內 寫上無數的if...else if...。當然也可以分門別類,用不同的PizzaFactory構造不同系列的Pizza,如下:
這個程序,實際上是對簡單工廠思維方式的反復使用。該程序中,設計了兩塊容易產生變化的部分(XXFactory和XXPizza的變化)。 我們對每一部分都使用了簡單工廠的思維——即把變化的部分抽象出來,用一個“工廠類”中的XXCreation方法來單獨實現這段維護時 容易產生變化的代碼。
在簡單工廠中,每抽象一次變化的部分,就在需要保持穩定的類和新增的控制變化的類之間產生了一個Association。
Copyright @ 化的了 Powered by: .Text and ASP.NET Theme by: .NET Monster