设计模式[1]——分类&口诀

设计模式[1]------分类&口诀

设计模式(Design Patterns)主要指GoF(Gang of Four)提出的23种经典模式,按照目的分为三大类:创建型(Creational) (关注对象创建机制)、结构型(Structural) (关注类和对象的组合)、行为型(Behavioral)(关注对象间的交互和责任分配)。以下表格列出所有模式,按类别归纳,包含简要描述(言简意赅)。表格基于标准分类,便于对比。

类别 模式名称 简要描述
创建型 (Creational) (5种:处理对象创建,避免直接实例化) Abstract Factory (抽象工厂) 提供接口创建相关对象家族,而不指定具体类。
Builder (生成器) 分步构建复杂对象,分离构造与表示。
Factory Method (工厂方法) 定义接口创建对象,由子类决定实例化类。
Prototype (原型) 通过克隆现有对象创建新对象。
Singleton (单例) 确保类只有一个实例,并提供全局访问点。
结构型 (Structural) (7种:处理实体组合,形成更大结构) Adapter (适配器) 转换接口,使不兼容类能合作。
Bridge (桥接) 分离抽象与实现,可独立变化。
Composite (组合) 将对象组合成树形结构,表示部分-整体层次。
Decorator (装饰器) 动态添加职责,而不影响其他对象。
Facade (外观) 为子系统提供统一接口,简化访问。
Flyweight (享元) 共享细粒度对象,减少内存使用。
Proxy (代理) 为其他对象提供占位符,控制访问。
行为型 (Behavioral) (11种:处理算法、责任和通信) Chain of Responsibility (责任链) 沿处理者链传递请求,避免耦合。
Command (命令) 将请求封装为对象,支持撤销/队列。
Interpreter (解释器) 定义语言的文法,并解释句子。
Iterator (迭代器) 提供顺序访问集合元素,而不暴露内部。
Mediator (中介者) 定义对象交互中介,减少直接依赖。
Memento (备忘录) 捕获对象内部状态,支持恢复。
Observer (观察者) 定义一对多依赖,对象变化时通知他人。
State (状态) 允许对象在内部状态变化时改变行为。
Strategy (策略) 定义算法家族,可互换使用。
Template Method (模板方法) 定义算法骨架,子类实现步骤。
Visitor (访问者) 在不改变元素类前提下,定义新操作。

记忆口诀

创五构七行十一,
抽象建厂原单例;
适桥组装外享代,
责命解迭中备观,
状策模访莫遗忘。

  • 创五:创建型5种(抽象工厂、生成器、工厂方法、原型、单例)。
  • 构七:结构型7种(适配器、桥接、组合、装饰、外观、享元、代理)。
  • 行十一:行为型11种(责任链、命令、解释器、迭代器、中介者、备忘录、观察者、状态、策略、模板方法、访问者)。
相关推荐
如来神掌十八式12 分钟前
设计模式之装饰器模式
java·设计模式
qqxhb13 小时前
26|Agent 设计模式:ReAct、Plan-and-Solve 与反射
设计模式·react模式·plan-and-solve·reflection模式
hssfscv14 小时前
软件设计师下午题六——Java的各种设计模式
java·算法·设计模式
UXbot14 小时前
2026年AI全链路产品开发工具对比:5款从创意到上线一站式平台深度解析
前端·ui·kotlin·软件构建·swift·原型模式
zhaoshuzhaoshu16 小时前
设计模式之创建型设计模式详细解析(含示例)
单例模式·设计模式·架构
倚楼盼风雨17 小时前
浅析设计模式-23种设计模式剖析
设计模式
Momentary_SixthSense2 天前
设计模式之工厂模式
java·开发语言·设计模式
Java码农也是农2 天前
Multi-Agent 系统设计模式
设计模式·agent·multi-agent
sg_knight2 天前
设计模式实战:状态模式(State)
python·ui·设计模式·状态模式·state
workflower2 天前
深度学习是通用型人工智能的基础
人工智能·深度学习·设计模式·软件工程·软件构建·制造