【发布时间】:2011-05-11 19:20:20
【问题描述】:
在 Google Web 工具包提供的示例中,他们仅在一个类中为整个应用程序添加事件处理程序。
如 - 对于模块 1、2 和 3,所有事件都在主 AppController 类中注册。我发现这有点单一,当我们使用 MVP 模式时,我们会在每个 Presenter 中声明一个名为 bind() 的方法,如下所示:
public class MyTestPresenter implements Presenter{
private void bind()
{
TestEvent.eventBus.addHandler(TestEvent.Type, new TestEventHandlerImpl() )
}
}
public class TestEvent
{
public static SimpleEventBus eventBus = new SimpleEventBus()
}
查询是:
如果我们的应用程序很大——我们将使用一个事件总线来填充其中的一千多个事件——或者我们是否会设计为每个模块都有单独的事件总线实例?
保留静态事件总线字段的任何成本。将实例提供给所有类的任何更好的设计 - 通过构造函数将其传递给所有类,每个演示者类都有它的引用似乎有点混乱......
在事件处理方面,GWT 中的活动和位置是什么? - 有人可以指出如何理解活动/地点的一般概念吗?
【问题讨论】:
标签: java gwt event-handling gwt2