简单工厂模式
类图
原来我们必须在客户端处new指定的类,通过简单工厂,我们只需要用工厂制造,条件判断的代码都写在工厂类中,这样我们如果有多个用户使用这个工厂的时候,就可以不用写多次条件判断代码,在加入新产品的时候也不用将每个用户的代码更新,只需要更新工厂中的方法即可。
工厂模式在我的理解中就是生产产品的工厂,如果我们不使用工厂,完全商店本地制造,那么我们开分店的时候,就需要重新搭建一次制造的设备,而使用工厂,我们所有店铺都可以使用这个工厂来生产,而且有新的产品,只要在工厂中修改,所有的商店都有新产品出售。
客户获取产品后可以选择性使用产品的功能,例如这里的产品可以加肉和加酱,商店通过工厂获取了产品之后,可以根据需要来加肉或者加酱。
简单工厂模式把生产环节放到里工厂里,这样就把所有商店需要做的工作放到了一个类之中,一旦生产发生改变,或者增加新产品,我们的修改就很简单。这将商店和具体的产品进行了解耦,商店只需要通过工厂就可以获得想要的产品,而不需要具体的进行new操作。
参考书籍:
《Head First设计模式》