Skip to content

模式对比与选型

易混组合

对比说明
策略 vs 状态类图像:策略由客户端注入;状态由上下文在转移规则下切换。
装饰器 vs 代理装饰器嵌套增强功能;代理控制访问(延迟加载、权限)。
桥接 vs 策略桥接分离抽象与实现两个维度;策略替换单一算法
简单工厂 vs 工厂方法简单工厂一个类里分支;工厂方法子类决定创建哪种产品。
外观 vs 中介者外观单向简化子系统调用;中介者协调多同事双向通信。

选型思路

  1. 问题是否是「创建」:控制实例个数→单例;步骤复杂→建造者;一族产品→抽象工厂。
  2. 问题是否是「组合结构」:树形→组合;统一接口适配旧类→适配器。
  3. 问题是否是「行为分配」:多算法互换→策略;一对多通知→观察者;请求封装排队撤销→命令。

时序示例(责任链 vs 观察者)

更多速查见 附录速查表

下一节:Spring常用设计模式