Injector
Guiceを学習中ですが、インスタンスの使用方法がはっきりとわかりません。Injector
アプリケーションのブートストラップで一度インスタンスを作成し、それをパブリックシングルトンにする方が良いですか?
Injector#getInstance(SomeClass.class)
そして、Guiceの@Inject
アノテーションを付けたクラスを取得するために常に使用する必要があるというのは本当ですか?
インジェクターをグローバルシングルトンとして渡すことはできません。https://github.com/google/guice/wiki/GettingStartedを見たことがありますか?とRealBillingService
のインスタンスを取得するためにインジェクターを使用しないことに注意してください。代わりに、Guiceはインスタンスを作成するときにこれらすべてを処理します。CreditCardProcessor
TransactionLog
同じタイプのオブジェクトを多数作成するためにGuiceが必要な状況にある場合は、プロバイダーを使用してそのプロバイダーを注入することを検討してください。