java - Guava 事件总线 : where to put it in GUI application?

标签 java guava

是否有放置 guava EventBus 的最佳位置?在 GUI 应用程序中?模型、 View 或 Controller 中有吗?或者三个级别的三个 EventBus ?或者只有两个?

谢谢。

最佳答案

事件总线设计模式通常用于 Swing 应用程序(如 in this other SO question 所述)。

Guava 的 EventBus 只是该设计模式的另一种实现,具有一些很酷的技巧来简化事件处理(例如使用注释)。但使用设计模式的目标保持不变。

如果我是你,我会研究事件总线模式通常如何用于富客户端应用程序(在 SO/Google 上),同时使用 Guava EventBus 来简化你的代码。

EventBus 应该是 IMO 单例(最好通过 Google Guice 或其他一些 DI 框架注入(inject))。

我不是 Swing 开发人员,但我做过 GWT 开发。不久前,GWT 应用程序大力插入 MVP/EventBus 架构。研究它可能会奏效,看看您是否可以将相同的想法应用到您的 Swing 应用程序中。

关于java - Guava 事件总线 : where to put it in GUI application?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9408885/

相关文章:

java - Google Guava : How to use ImmutableSortedMap. 自然顺序?

java - Java中的循环链表,何时指向第一个节点?

Java 折叠数组列表

java - 按元素频率顺序遍历多重集的最简单方法?

java - 如何使用另一个列表中的对象的属性创建一个新列表

java - 将集合转换为 java 中的映射

java - hibernate 和 mysql 带有 create-drop 选项,控制台输出显示错误...但 ddl 执行正常;可能的错误?

java - Java 是 "pass-by-reference"还是 "pass-by-value"?

java - 从本地计算机连接到 GoogleAppEngine 的 DataStore

intellij-idea - Guava 库不适用于 IntelliJ IDEA