(三)工厂模式

0 阅读1分钟

工厂模式概述

1.模式定义及核心思想 工厂模式(Factory Pattern) 是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,创建对象时不会对客户端暴露创建逻辑,而是通过一个共同的接口来指向新创建的对象。

核心思想:把对象的创建和使用分离,不让使用者直接 new 对象,统一交给「工厂」来生产,降低耦合、方便维护。 工厂模式分三种:简单工厂、工厂方法、抽象工厂,层层递进

简单工厂

核心:

一个工厂类,包含一个方法,根据参数决定创建哪个产品。(工厂模式内部创建一个父类的子类,返回的则是父类的接口,这种行为,其实就是多态。

角色:

  • 抽象的产品 : 统一产品接口(如Device 电子设备)
  • 具体的产品 : 手机、电脑
  • 工厂类 : 统一生产方法

工厂方法模式(标准工厂模式)

核心:

一个产品对应一个工厂,定义抽象工厂接口,每个具体工厂只生产对应产品。 角色

  1. 抽象产品
  2. 具体产品
  3. 抽象工厂:定义生产接口
  4. 具体工厂:每个工厂只造一种产品 核心规则 一个工厂只负责生产一个产品

抽象工厂模式(超级工厂)

核心:

工厂生产一族产品,不止一个产品,而是「产品簇」。

举例:

• 小米工厂:造小米手机 + 小米电脑 • 华为工厂:造华为手机 + 华为电脑

适用场景:

有多个产品系列、产品分组、整套配套产品时使用

三种工厂对比

image.png