首页/开发/代码质量与评审速查/行为型模式选型速查(Strategy/State/Observer/Command 等)
设计原则与模式62 条

行为型模式选型速查(Strategy/State/Observer/Command 等)

行为型模式都在分配职责与交互:算法替换用 Strategy、状态迁移用 State、一对多通知用 Observer、请求对象化用 Command、算法骨架用 Template Method;先描述问题再选模式。

行为型模式对照

模式一句话典型信号
Strategy可替换算法族按场景切换计算方式
State行为随状态变状态字段与迁移分支
Observer变更广播订阅多处需感知同一事件
Command请求对象化需要排队/撤销/审计
Template Method骨架 + 可变步骤多个流程仅个别步骤不同
Chain依次传递处理校验/审批管线
Mediator集中协调交互网状依赖待收敛
先用业务语言描述职责与变化点,再对照模式名:模式是命名工具,不是设计目标。

易错点

  • 按名称选模式:忽略问题本身的约束与变化轴
  • 同一层次堆多个模式:先回答「谁是变化点」再谈组合

数据来源与参考

  • 《设计模式》(GoF)· 行为型模式意图综述
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌