动机:将一组行为抽象为对象,实现行为请求者和行为实现者之间的解耦,并且支持对行为进行记录、撤销、重做、事务等处理。

场景:考虑一系列文档操作:打开、复制、剪切、粘帖。


结构
设计模式学习笔记十五——Command模式


代码实现

}

}

}

}


要点
      1、本模式的基本目的在于将行为请求者和实现者解耦,常见的实现方法是将行为抽象为对象。
      2、实现行为的具体对象有时候根据需要可能会保存一些额外的状态信息,比如实现撤销、重做时。
      3、可以和Composite模式结合,实现多个命令的组合成复杂命令。
      4、本模式和Delegate有些类似。但两者定义行为接口的规范有所区别:本模式以面向对象中“接口-实现”来定义行为接口规范,更严格,更符合抽象原语;Delegate以函数签名来定义行为接口规范,更灵活,但抽象能力比较弱。

相关文章:

  • 2021-07-30
  • 2022-01-11
  • 2021-10-26
  • 2021-06-16
  • 2021-10-04
  • 2021-07-28
猜你喜欢
  • 2022-01-15
  • 2021-06-16
  • 2021-06-19
  • 2021-05-29
  • 2022-12-23
相关资源
相似解决方案