设计模式的分类

2025年3月17日 | 阅读 3 分钟

设计模式主要分为三大类:创建型设计模式、结构型设计模式和行为型设计模式。 它们之间的区别在于详细程度、复杂性和对整个设计系统的适用规模。

还有两种模式 - 惯用法和架构模式。 但我们不会在本教程中探讨它们。

创建型设计模式

顾名思义,它提供了对象或类创建机制,可以增强现有代码的灵活性和可重用性。 它们减少了依赖关系,并控制了用户与类的交互方式,因此我们不必处理复杂的构造。 以下是各种创建型设计模式

抽象工厂 - 它允许我们创建对象,而无需指定其具体类型。

建造者 - 它用于创建复杂对象。

工厂方法 - 它允许我们创建对象,而无需指定要创建的确切类。

原型 - 它用于从现有对象创建新对象。

单例 - 单例设计模式确保仅创建一个对象的实例。

结构型设计模式

结构型设计模式主要负责将对象和类组装成更大的结构,确保这些结构灵活高效。 它们对于增强代码的可读性和可维护性至关重要。 它还确保功能被适当地分离和封装。 它减少了相互依赖事物之间的最小接口。

适配器 - 它通过在现有类之一周围包装一个接口,为我们提供了两个不兼容的类一起工作的能力。

组合 - 它将一组对象包装到单个对象中。

桥接 - 它解耦了一个抽象,以便两个类可以独立变化。

装饰器 - 它在运行时动态扩展对象行为。

外观 - 它为更复杂的底层对象提供了一个简单的接口。

享元 - 它降低了复杂对象模型的成本。

代理 - 它降低了成本,降低了复杂性,并为底层对象提供占位符接口以控制访问。

行为设计模式

行为设计模式负责一个类如何与其他类通信。

职责链 - 它将命令传递给处理对象的链。

命令 - 它生成封装参数操作的对象。

解释器 - 它实现了一种专门的语言。

迭代器 - 它按顺序访问对象的所有元素,而不违反其底层表示。

中介者 - 它通过成为唯一了解其现有方法的类来提供类之间的松散耦合。

备忘录 - 它将对象恢复到之前的状态。

观察者 - 它允许许多观察者对象查看事件。

状态 - 它允许对象在其内部状态改变时修改其行为。

策略 - 它提供了可以在运行时选择的算法系列之一。

模板方法 - 它允许子类提供具体的行为。 它还将算法的骨架定义为抽象类。

访问者 - 它通过将方法的层次结构移动到一个对象中,将算法与对象结构分离。

我们将在接下来的教程中学习一些重要的设计模式。


下一个主题建造者设计模式