三种工厂模式的比较


简单工厂模式:简单工厂模式最大的优点在于工厂类中包含了必要的判断逻辑,根据客户端的条件动态的实例化相关的类,对于客户端来说去除了对具体产品的依赖

三种工厂模式的比较


工厂模式:定义一个用于创建对象的接口,让子工厂决定实例化哪一个类,工厂方法使一个类的实例化,延迟到子类中去实现,可以在具体工厂产生实例的时候,做各种校验,和产生规则,避免了直接用new带来的不方便控制流程。
三种工厂模式的比较

抽象工厂:升级了对产品的再次抽象,abstractFactory里包含所有创建抽象产品的方法。而ConcreteFactory1,ConcreteFactory2就是具体的工厂。而创建对象时选择ConcreteFactory1则会创建对应的ProductA1和ProductB1,如果改为创建ProductA1和ProductB2,而需要改为ConcreteFactory2工厂即可
三种工厂模式的比较