命令模式将请求(命令)封装为一个对象,这样可以使用不同的请求参数化其他对象(将不 同请求依赖注入到其他对象),并且能够支持请求(命令)的排队执行、记录日志、撤销等 (附加控制)功能。

一些编程语言不支持传递函数,但是我们将函数封装在对象中,然后传递对象,就可以达到同样的效果。

参考

《设计模式之美》