9

根据此视频[ @ 7:50],Google 建议在其请求处理 API 之上使用命令模式。还有一个看起来很有帮助的项目gwt-dispatch实现了该模式。

根据 gwt-dispatch文档,我需要为每个命令创建四个类:

  • 一个动作(例如命令)
  • 结果(例如响应)
  • 动作处理程序
  • 一个模块

假设我的服务 API 在 8 个 BSO 中有 100 个方法,有人可以向我解释为什么我要创建近 400 个新类吗?这种模式有什么令人敬畏的?

4

1 回答 1

6
  • 使用命令模式的一个很好的理由是,当您想将命令对象传递给进一步的委托时 - 因此与其复制所有参数,不如只传递命令对象更容易。它对于 gwt-dispatch 的回滚功能(或撤消/重做功能,例如在 Eclipse 的 UndoableOperations 中)也很有用。

  • 它有助于通过使用不同的构造函数和命令的子类来提供多种命令变体。

  • 我不建议总是使用该模式,但是当你不使用它时,你不会像你想象的那样节省:无论如何,你经常需要结果对象 - 并且可以重用相同的返回对象。在其他情况下,您可以对命令和结果使用相同的对象。

  • 该模块可用于多个命令。

于 2010-07-14T11:08:20.083 回答