抽象工厂设计模式
介绍
抽象工厂设计模式是设计模式中“创建型模式”中的一种,它是用来创建其它工厂的超级工厂。所以该设计模式也被称为创建工厂的工厂。抽象工厂的职责是创建某工厂,该工厂能创建相关联的产品而不需要制定特定产品的类名。每一个被创建的工厂都能如工厂模式一样提供产品。
实现方式介绍
在工厂模式中,我们一般都使用if-else或者switch语句根据条件来创建产品,在抽象工厂模式中,我们不使用这样的方式,一般直接使用要创建工厂的类来创建:
Product product = abstractFactoryObject.create(new SubFactoryOne(paramOne,paramTwo));
抽象工厂设计模式的优点
- 抽象工厂设计模式是根据接口来编程而不是实现。
- 其是工厂的工厂,易于拓展;例如我们增加某一系列产品和该系列产品的工厂即可,不需要修改其它的类
- 抽象工厂模式鲁棒性很好,避免了工厂模式中的条件判断逻辑