@Inject
および/または@InjectView
アノテーションの意味および目的はAndroid/Javaプログラミング?
どうすれば使用できますか?
よろしくお願いします!
Androidの場合、これらのアノテーションは Roboguiceフレームワーク の一部です。これらは、Android環境で 依存性注入 を提供するために使用されます。
これにより、基本的なPOJO、ビュー、または別のリソースであるかどうかに関係なく、目的のリソースのインスタンスを直接挿入できます。これが RoboGuice wiki からのPOJOの例です:
class MyActivity extends RoboActivity {
@Inject Foo foo; // this will basically call new Foo();
}
これは些細なことですが、基本的にインジェクションポイントは、インジェクションされたFooクラスのインスタンスの作成/管理からクラスを独立させ、代わりに、この場合はFooのデフォルトコンストラクターを呼び出すことによってFoo自体にその責任を負わせることです。 MyActivityはFoo自体を実際に作成する詳細がないため、これにより、モックなどを介したテストが容易になります。