设计模式-08-创建型-建造者模式

🧱 建造者模式(Builder Pattern)

✅ 定义

建造者模式就是把「怎么一步步做一件复杂的东西」这件事,单独提出来管理

将一个复杂对象的构建过程与它的表示分离,使得同样的构建过程可以创建不同的表示。

🧠 换句话说:

  • 如果一个对象的创建过程非常复杂(多步骤、步骤有顺序)
  • 并且这个对象的不同版本只是在构建参数或步骤上有差异
  • 那么就适合使用建造者模式

它让你可以:

  • 同一个流程 → 做出不同风格的成品
  • 不用记步骤,构造过程被封装好了!
阅读更多

设计模式-08-创建型-建造者模式

🧱 建造者模式(Builder Pattern)

✅ 定义

建造者模式就是把「怎么一步步做一件复杂的东西」这件事,单独提出来管理

将一个复杂对象的构建过程与它的表示分离,使得同样的构建过程可以创建不同的表示。

🧠 换句话说:

  • 如果一个对象的创建过程非常复杂(多步骤、步骤有顺序)
  • 并且这个对象的不同版本只是在构建参数或步骤上有差异
  • 那么就适合使用建造者模式

它让你可以:

  • 同一个流程 → 做出不同风格的成品
  • 不用记步骤,构造过程被封装好了!
阅读更多

设计模式-09-创建型-原型模式

🧬 原型模式(Prototype Pattern)

✅ 定义

用原型实例指定要创建的对象类型,然后通过复制这个原型来创建新对象。

🧠 它的核心就是:

  • 不用 new,而是通过 clone() 快速复制现有对象。
  • 适用于构造成本高重复结构的对象
阅读更多

设计模式-09-创建型-原型模式

🧬 原型模式(Prototype Pattern)

✅ 定义

用原型实例指定要创建的对象类型,然后通过复制这个原型来创建新对象。

🧠 它的核心就是:

  • 不用 new,而是通过 clone() 快速复制现有对象。
  • 适用于构造成本高重复结构的对象
阅读更多

设计模式-07-创建型-抽象工厂模式

🏗️ 抽象工厂模式(Abstract Factory Pattern)

✅ 定义

提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。

🧠 换句话说:

  • 如果你有多个“产品”,它们属于同一个产品族
  • 你希望通过一个“工厂”一次性创建这一整组产品
  • 并且这些产品之间可以相互配合使用

这时候就需要:抽象工厂模式

阅读更多

设计模式-07-创建型-抽象工厂模式

🏗️ 抽象工厂模式(Abstract Factory Pattern)

✅ 定义

提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。

🧠 换句话说:

  • 如果你有多个“产品”,它们属于同一个产品族
  • 你希望通过一个“工厂”一次性创建这一整组产品
  • 并且这些产品之间可以相互配合使用

这时候就需要:抽象工厂模式

阅读更多

设计模式-06-创建型-工厂方法模式

🏭 工厂方法模式(Factory Method Pattern)

✅ 定义

定义一个用于创建对象的接口,让子类决定实例化哪一个类。
工厂方法使一个类的实例化延迟到其子类。

🧠 换句话说:

  • 父类定义创建产品的方法(通常是接口或抽象类中的 create() 方法)
  • 子类根据需要重写这个方法,决定创建哪个具体产品对象

它让「创建」过程从父类中剥离出来,完全交给子类负责,从而实现:

  • 🔄 扩展性更强
  • ✅ 满足开闭原则
  • 🧩 面向接口编程
阅读更多

设计模式-06-创建型-工厂方法模式

🏭 工厂方法模式(Factory Method Pattern)

✅ 定义

定义一个用于创建对象的接口,让子类决定实例化哪一个类。
工厂方法使一个类的实例化延迟到其子类。

🧠 换句话说:

  • 父类定义创建产品的方法(通常是接口或抽象类中的 create() 方法)
  • 子类根据需要重写这个方法,决定创建哪个具体产品对象

它让「创建」过程从父类中剥离出来,完全交给子类负责,从而实现:

  • 🔄 扩展性更强
  • ✅ 满足开闭原则
  • 🧩 面向接口编程
阅读更多

设计模式-05-创建型-简单工厂模式

🧾 简单工厂模式(Simple Factory Pattern)

✅ 定义

由一个工厂类,根据传入参数,决定创建哪个产品类的实例。

🧠 它把“选择创建哪个类”的逻辑放到了一个工厂方法里,一般用 ifswitch 控制。

阅读更多