- 相对于面向过程编程,COMMAND模式可以理解为对回调函数的封装。
- 不是所有的行为、操作,都有必要应用COMMAND模式。只有需要复用的行为操作,才有必要应用COMMAND模式。比如某些菜单项与某些按钮的行为相同,可以抽象出COMMAND,以便不同的客户(菜单项与按钮)复用这些行为对象。比如undo, 可以抽象出COMMAND,在不同的时刻复用这些行为对象(有时调用该行为对象的do, 有时调用该行为对象的undo)。
- 触发COMMAND的对象,与COMMAND的绑定,是在初始化函数中实现的。其绑定关系,可以通过外部文件描述。初始化函数读入解析后绑定。修改外部文件,无需重新编译程序,即可修改对COMMAND的绑定关系。
- 实体,很容易被想到可以抽象,但实际上,行为也可以被抽象。可能正是为了强调这一点,COMMAND被列为了一种设计模式,尽管它的结构很简单。
设计模式再思考之COMMAND模式
最新推荐文章于 2024-08-23 21:42:58 发布