java - 为什么在 GWT(或任何网络应用程序)中使用命令模式?

标签 java javascript gwt command-pattern

根据此视频 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/

相关文章:

java - JSON 值中的空格

javascript - 使用对象将 javascript 变量传递给 php

javascript - HTML5 Canvas 玩家限制

javascript - gridster 和多个 highcharts 的调整大小和定位问题

google-chrome - 通过从本地环境加载 SourceMaps 在生产环境中调试 GWT 应用程序

java - 向元素添加 MouseOverHandler?

java - Dijkstra 算法 : Printing whole path in console works fine, 无法将其转换为正确的字符串

java - 在 Java 中将文件编码为 Base64

database - 数据库连接时找不到 GWT 文件问题

java - 无需java代码构建war文件