工厂模式

2017-12-16  本文已影响0人  猿技术小栈

将常见的工厂模式按照其复杂度,依次可分为:简单工厂、工厂方法、抽象工厂。在代码结构设计中,考虑领域的复杂度,可以综合运用多个工厂模式的组合。不要过度抽象,增加不必要的代码复杂度。

简单工厂

简单工厂模式只用一简单工厂类,包含了必要的逻辑判断,根据客户端的选择条件实例化不同的类

特点:

  1. 根据客户端参数创建不同的产品
类图-简单工厂

工厂方法

工厂方法模式将实例化具体对象的逻辑抽象到其子类,由其不同的子类生成不同的对象

特点

  1. 抽象工厂类
  2. 根据不同的产品创建不同的工厂实现类
  3. 在工厂实现类中包含创建具体产品的逻辑
  4. 客户端需要知道需要创建的具体产品对应的工厂类
类图-工厂方法

抽象工厂

抽象工厂定义了创建一系列对象的接口,由其共同的子类实现;不同的子类创建一系列不同的对象

特点

  1. 用于创建一个系列的对象
  2. 抽象工厂类用于描述创建一系列产品的所有接口
  3. 具体的工厂类对应一个系列产品创建的具体实现
  4. 客户端可以根据不同的实现类做到系列产品的整体替换
类图-抽象工厂
上一篇 下一篇

猜你喜欢

热点阅读