2017-06-11 10 views
0
@Provides 
@Singleton 
LoginPresenter provideLoginPresenter() { 
    return new LoginPresenterImplementation(); 
} 

Androidアプリを設計する際のアプローチはMVPです。私は依存性注入のためにDaggerを使用します。インターフェイスプレゼンターを作成すると、私はそれをシングルトンにしました。Android Daggerシングルトンプレゼンター

誰かが記憶に重いのでシングルトンにしないように提案します。

あなたはどう思いますか?シングルトンのように使うかどうか?私はプロと意見を期待しています。

+0

シングルトンアノテーションはオプションですので、使用する必要はありません。また、アプリケーションでカスタムのスコープアノテーションをパブリック@interfaceとして宣言することで、任意の数のカスタムアノテーションアノテーションを定義できます。 – kimkevin

答えて

2

ダガーでのシングルトンインスタンスを作成し、それを参照すると同じですが、あなたはの世話をする必要が2点あります。

  1. は、Applicationクラスのシングルトンを持つことはときにオブジェクトを作成することを意味これまでアプリケーションが起動し、いくつかのAPIに必要な終了までメモリ内に保持しますが、主にいくつかのクラスを読み込み、アクティビティで使用し、メモリの問題で終了した後に終了させる必要があります管理。

  2. シングルトンアノテーションは、アプリケーションモジュール(アプリケーションクラスで割り当てた主なもの)に追加するとうまく動作しますが、サブモジュール用に使用する場合は、それらを生かしておく必要があります。

あなたはMVPに精通取得するには、このサンプルプロジェクトhttp://github.com/mmirhoseini/marvel、この記事 https://hackernoon.com/yet-another-mvp-article-part-1-lets-get-to-know-the-project-d3fd553b3e21を見てみることができます。

関連する問題