【设计模式】工厂方法
工厂方法
工厂方法,定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。
工厂方法是简单工厂的延申。
在简单工厂中,如果想要添加新的产品,那么首先需要添加的一个具体产品类,在之后需要改变工厂类里的switch语句,添加判断。这样就发现,将写好的类更改了,这样其实违反了开闭原则。
为了对其进行修正,采取了工厂方法的模式。将工厂也进行抽象,其下面也有继承的具体工厂类,每个工厂类对应一个具体产品的生产。
当然工厂方法的缺点也很明显,每加一个产品,就要加一个对应的工厂,增大的开发量。
所以到底是使用简单工厂还是工厂方法,还是需要视情况而定。