抽象工厂模式

抽象工厂设计模式

介绍

抽象工厂设计模式是设计模式中“创建型模式”中的一种,它是用来创建其它工厂的超级工厂。所以该设计模式也被称为创建工厂的工厂。抽象工厂的职责是创建某工厂,该工厂能创建相关联的产品而不需要制定特定产品的类名。每一个被创建的工厂都能如工厂模式一样提供产品。

实现方式介绍

在工厂模式中,我们一般都使用if-else或者switch语句根据条件来创建产品,在抽象工厂模式中,我们不使用这样的方式,一般直接使用要创建工厂的类来创建:

    Product product = abstractFactoryObject.create(new SubFactoryOne(paramOne,paramTwo));

抽象工厂设计模式的优点

  • 抽象工厂设计模式是根据接口来编程而不是实现。
  • 其是工厂的工厂,易于拓展;例如我们增加某一系列产品和该系列产品的工厂即可,不需要修改其它的类
  • 抽象工厂模式鲁棒性很好,避免了工厂模式中的条件判断逻辑

抽象工厂模式的类图

gliffy UML类图

代码实现

github

你可能感兴趣的:(抽象工厂模式)