学习设计模式 - 命令模式

学习设计模式 - 命令模式

一丶定义

  将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能.(Encapsulate a request as an object, thereby letting you parameterize clients with different requests, queue or log requests, and support undoable operations)

 

二丶理解

   将命令的请求调用者和命令的接收执行者解耦

  在请求调用者和接收执行者之间添加一个中间层--Command接口,仅仅向上层暴露一个方法execute(),使用该接口,封装屏蔽了多个接收执行者。请求调用者不直接与接收执行者对接,可以决定何时调用。与此同时,有比较好的拓展性,仅仅只需要实现Command接口,就可以添加新的命令接收执行者。

 

三丶例子

  

 

 

  由于代码过多, 就不贴代码了, 点此查看

 

 

学习资料:

  <设计模式之禅>

  <Head First 设计模式>

 

posted @ 2019-07-08 23:31  timfruit  阅读(148)  评论(0编辑  收藏  举报