Skip to content

Latest commit

 

History

History
33 lines (22 loc) · 667 Bytes

File metadata and controls

33 lines (22 loc) · 667 Bytes

命令模式 (Command Pattern)

定义

将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。

类图

// 类图内容

适用场景

  • 使用命令模式作为"CallBack"在面向对象系统中的替代
  • 需要在不同的时间指定请求、将请求排队
  • 系统支持命令的撤销(Undo)操作

优缺点

优点

  • 类间解耦
  • 可扩展性好
  • 命令模式结合其他模式会更优秀

缺点

  • 如果命令很多,会导致Command子类膨胀

代码实现

// 示例代码