我剛開始使用Roboguice(+ Guice),我不確定如何使用它的最佳實踐。Roboguice/getInstance +最佳實踐
在我的活動中,我使用了一個名爲「ProviderQueries」(Singleton)的對象,它有大約5個函數(大約30個)。我可以以兩種方式使用它:
1)
protected void onResume() {
super.onResume();
getInjector().getInstance(ProviderQueries.class).setLanguage("EN");
}
2)
class MyActivity extends RoboActivity {
@Inject
private ProviderQueries pv;
...
protected void onResume() {
super.onResume();
pv.setLanguage("EN");
}
}
1 - 太長,但使用ProviderQueries的實例在需要的地方
2 - 短而好,但「pv」可用於整個活動,但只需要5個不同的功能...
你會使用哪種方法,或者你有一個解決方案?
在此先感謝!
我用ProviderQuery.getInstance()(PQ之前被實施爲單件-廠)。 ProviderQuery只是Provider-Requests的一個助手類。我的問題主要是設計問題。通常我會嘗試儘可能靠近需要的對象來使用它們。 –