图 1
设计模式泛泛谈:
不知道是不是只有我一个人感觉命令模式没有什么用。
如果已有两个模块。出于这两个模块的数据交互过于复杂,所以写个中间层来处理数据交互。
在 SICP 中有用 cloud 封装数据,因为 java 不是 fp 所以 can not !。
和工厂模式一样,命令模式可以用于什么任何场合(只要你的程序有多个模块!)。但是这样做不见得是最简单和有效的。
Q: 计算机科学领域的任何问题都可以通过增加间接一个中间层来解决, 命令模式是不是就这个中间层?
A: if you believe,其它的封装也是(不局限于封装)。适配器和工厂模式也是这样的中间层
Q: 既然 SICP 中可以不要 命令模式, python 也可以不用 命令模式。
SICP 可以用不用 装饰器模式, python 为什么需要 装饰器模式?而且 装饰器模式在 python 应用非常广泛!
A: SICP 泛型编程,本身就有各种包裹。不需要显示教导别人用装饰器模式。 装饰器在 python 属于一种难得的 元技术,所以要推广。
Q: 外观模式、命令模式、适配器模式。这三个模式很像(都是采用中间层来解决问题)
C: 命令模式不一定解决了模块间的数据交互,但是至少隔离了模块