2014-09-24 216 views
0

我们现在在我们的项目中有一个类,其中1000行bindPresenter(...)是其唯一方法,在应用程序启动时启动。我担心的是性能:这种注射会减慢应用程序吗?我是对的,它不是懒惰的注入,并且所有的提交者都在应用程序的开始创建所有的依赖关系?Java GWT依赖注入

我们使用了分析器,它似乎像注射真的开始减速,但我们不确定。

谢谢!

回答

3

我怀疑你的1000个bind语句会减慢你的应用程序的加载时间。从GWTP's Presenter docs

每个演讲者相关的代理负责监听的这个演讲感兴趣的 各种活动。这可以让演示者懒洋洋地实例化 并使用GWT代码拆分。

由于Presenter s为懒惰的实例化,你的慢启动可能被其他的财产以后造成的。这可能会拖慢网页加载时间

的一件事是,如果你做粗重PresenterWidget注射,无需使用杜松子酒的Provider S:

@Inject 
ParentPresenter(
    SomePresenterWidget a, 
    SomePresenterWidget b) { 
    // ... 
} 

注入许多PresenterWidget就像这需要建立PresenterWidget s提高前,其可能会导致加载速度减慢。你可以使用Provider s到延迟加载PresenterWidget S:

@Inject 
ParentPresenter(
    Provider<SomePresenterWidget> a, 
    Provider<SomePresenterWidget> b) { 
    // ... 
} 

,只使用provider.get()需要的时候实例化PresenterWidget秒。