3

私はDependency Injectionsについて読んでいて、注目を集める2つのライブラリ、AndroidAnnotationsとDagger 2を見つけました.AAにはDIを含む多くの機能がありますが、大部分の開発者はDagger DIは2です。AndroidAnnotationsとDagger 2

私は、DIとAAの違いとDagger 2のDIの違いは何ですか?私がAAを使用すると、ダガー2は必要ないということですか?

DIでAAを使用して他のライブラリと比較すると、多くの情報が見つかりませんでした。

多くの情報が役に立ちます。

答えて

2

私はAAとDaggerを比較することはできません。

ダガーは、多くの機能を備えた一般的な依存性注入ライブラリです。 Android上でも動作するように設計されていますが、Androidは不要で、純粋なJavaプロジェクトにも適用できます。完全なコード生成ベースの依存性インジェクタのための多くの依存性注入機能を備えています。

AndroidAnnotationsは、Android用のアノテーションベースのフレームワークです。依存性注入モジュールは限られていますが(これはAAの小さなサブセットです)、それはその主な機能ではありません。これは、すべてのプロジェクトで使用され、通常はビューやリソースの注入、イベントハンドリング、インスタンスの状態の復元、スレッドなどの不要なコードを大量に必要とする、Android用の多くのためのアノテーションベースの定型除去APIを追加します。 AA hereのすべての使用例を参照してください。

ダガーとAA can coexist実際には、Daggerの洗練されたデポ注入とAAの多くの機能を一緒に使用するのが実際には理にかなっています(私はすべてのプロジェクトでそうしています)。

免責事項:私はAndroidAnnotations開発者です。

0

最近、MVSアーキテクチャと一緒にダガーライブラリを使用して依存性注入を理解するのに役立つDagger 2とAndroid Architectural Components(Room and Viewmodel)を実装して、サンプルアプリケーションを作成しました。

Here is the github project link

関連する問題