代码之家  ›  专栏  ›  技术社区  ›  Bertvan

这是命令模式吗?

  •  1
  • Bertvan  · 技术社区  · 16 年前

    我有一个MVP图形用户界面,现在我想为某些视图定义某些操作或命令(修改、保存、关闭…)。

    有简单的方法吗?我应该为每个视图提供命令吗?

    1 回复  |  直到 16 年前
        1
  •  3
  •   Martin Brown    16 年前

    最简单的方法是在工厂中实例化所有命令对象。因此,如果您有一个open job命令,那么所有视图都将转到工厂并拉出open job命令对象,实例化它,然后执行它。如果您需要修复一个bug或更改open job命令,那么只有一个位置需要对所有视图进行修复。

    有了这一点,将有一些命令可能对每个视图都是唯一的。尽管如此,您可能仍然希望将这些内容封装在命令对象中,因为您可以轻松地通过命令对象实现撤消/重做。

    推荐文章