学习设计模式 - 命令模式
学习设计模式 - 命令模式
一丶定义
将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能.(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 设计模式>
人生没有彩排,每一天都是现场直播