根据此视频 here [@ 7:50] Google 建议在其请求处理 API 之上使用命令模式。还有一个看起来很有帮助的项目 gwt-dispatch实现了该模式。
根据 gwt-dispatch documentation我需要为每个命令创建四个类:
- 一个 Action (例如命令)
- 结果(例如响应)
- 一个 Action 处理器
- 一个模块
假设我的服务 API 在 8 个 BSO 中有 100 个方法,有人可以向我解释为什么我要创建近 400 个新类吗?这种模式有什么好处?
最佳答案
使用命令模式的一个很好的理由是,当您想将命令对象传递给更多委托(delegate)时 - 因此与其复制所有参数,不如简单地传递命令对象。它对于 gwt-dispatch 的回滚功能(或撤消/重做功能,例如在 Eclipse 的 UndoableOperations 中)也很有用。
它有助于通过使用不同的构造函数和命令的子类来提供多种命令变体。
我不建议总是使用该模式,但是当您不使用它时,您并没有像您想象的那样节省:无论如何您将经常需要结果对象 - 并且可以重用相同的返回对象。在其他情况下,您可以对命令和结果使用相同的对象。
该模块可用于多个命令。
关于java - 为什么在 GWT(或任何网络应用程序)中使用命令模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3243423/