creational patterns

5个创建型模式

Singleton pattern

单例模式, 保证无论实例调用多少次,该操作只运行一次。

并发模式需要加锁。

Factory pattern

简单工厂模式: 它提供了一种将实例化逻辑委托给子类的方法。

当类中有一些通用处理但所需的子类在运行时动态决定时很有用。或者换句话说,当客户不知道它可能需要什么确切的子类时。

Abstract Factory pattern

抽象工厂模式: 工厂的工厂;一个工厂,它将单独但相关/依赖的工厂组合在一起,而不指定它们的具体类。

当存在相互关联的依赖关系并涉及不那么简单的创建逻辑时.

Builder pattern

建造者模式

允许您创建不同风格的对象,同时避免构造函数污染。当一个对象可能有多种风格时很有用。或者当创建一个对象涉及很多步骤时。

当一个对象可以有几种类型时,为了避免构造函数伸缩。与工厂模式的关键区别在于;当创建是一个一步过程时使用工厂模式,而当创建是一个多步骤过程时使用构建器模式。

Prototype pattern

原型模式, 通过克隆基于现有对象创建对象。简而言之,它允许您创建现有对象的副本并根据需要对其进行修改,而无需经历从头开始创建对象并进行设置的麻烦。

当需要一个与现有对象相似的对象时,或者当创建与克隆相比代价高昂时。