本文介绍了经典的 GOF 23 种设计模式,包含常见模式的定义、应用场景及代码示例。点击此处查看设计模式 UML 图表

什么是设计模式?

设计模式是软件开发中常见的解决方案模板,旨在提高代码可重用性、可读性及扩展性。GOF(GoF)由《设计模式:可复用面向对象软件的基础》一书提出,包含以下分类:

三大分类

  • 创建型模式(Creational Patterns)
    🏗️ 用于创建对象,如 单例模式工厂方法模式抽象工厂模式
    示例:单例模式实现

  • 结构型模式(Structural Patterns)
    🧱 用于处理对象与类之间的组合关系,如 适配器模式代理模式装饰器模式
    示例:适配器模式应用

  • 行为型模式(Behavioral Patterns)
    🕹️ 用于定义对象间通信方式,如 观察者模式策略模式命令模式
    示例:策略模式实战

常见模式速览

模式名称 适用场景 优点
工厂方法模式 对象创建逻辑需要扩展 遵循开闭原则
单例模式 需要全局唯一实例 控制资源访问
观察者模式 对象间事件驱动交互 解耦发布者与订阅者
装饰器模式 动态添加对象功能 不改变原有接口
命令模式 封装请求与执行 支持操作的撤销与重做

示例代码(Java)

// 单例模式示例
public class Singleton {
    private static Singleton instance = new Singleton();
    private Singleton() {}
    public static Singleton getInstance() {
        return instance;
    }
}

扩展阅读

点击查看所有设计模式分类详解
了解设计模式在微服务中的应用

设计模式_GOF