1.简单:简单工厂类里最重要的创建物体的方法。
如下图所示,其实就是把 createPizza方法从PizzaStore类中分离开到一个单独的类中,这个类就是简单工厂类。
2.中等:如果工厂也分类了,有不同的工厂。
createPizza放到对应的子类中实现了。子类PizzaStore 根据 传入pizza类型参数 createPizza。
Pizza的子类也增加为”Style“ + ”Type“的组合。
3.复杂:考虑如何生成不同Style和不同Type的Pizza。假设其根本原因在于其原料的不同,所以在Pizza类中增加一个 原料工厂类成员。
而这个原料工厂类具体是什么,由上一层具体的PizzaStore来指定。
比如NYPizzaStore,指定制作Pizza的原料用NYPizzaIngredientFactory。
参考:《headfirst设计模式》
时间: 2024-10-05 06:29:54