知识卡片
命令模式作为责任链模式排头兵组成命令链框架
内容
UNIX命令移植Windows的模拟器案例展示了命令模式与责任链模式的组合,专名 “命令链”(Chain of Command)。分工:责任链负责解析同一命令族内部参数(如LS族下 LS/LS_L/LS_A各处理自己认识的选项,处理不了转下一节点);命令模式在更高层次分发—— 判断命令属于哪个命令族,找到对应责任链首节点转交请求。发散:命令模式是”排头兵”,责任链 负责内部具体处理,两者纵向组合、各司其职。
参考来源
- 位置:《设计模式之禅(第2版)》第34章《命令模式+责任链模式》34.1-34.2节(源文件:_epub-src/text/part0151.html, part0152.html)
- 结论依据:原文用UNIX命令模拟器案例说明"命令模式负责协调各个命令正确地传递到各个责任链的首节点,这就是它的任务",并在小结中总结"该框架还有一个名称,叫做命令链(Chain of Command)模式,具体来说就是命令模式作为责任链模式的排头兵,由命令模式分发具体的消息到责任链模式"。
- 原始内容:命令模式负责协调各个命令正确地传递到各个责任链的首节点,这就是它的任务……该框架还有一个名称,叫做命令链(Chain of Command)模式,具体来说就是命令模式作为责任链模式的排头兵,由命令模式分发具体的消息到责任链模式。