3

私はGWTは初めてですが、依存性注入は初めてではありません。

Gin を介した DI と GWT Deferred Binding の具体的な違いを探しています。私は過去に DI を使用して、依存関係を注入することでアプリを分離しました。Deferred Binding も、より明示的な方法でそれを行い、ブラウザーの互換性を重視しているようです。

主な違いは何ですか。どちらかを選択する必要がありますか、それとも補完的なものですか。

私たちは新しいアプリを構築しており、この基盤を強固なものにしたいと考えています。

4

1 に答える 1

4

Ginは、遅延バインディングを使用して、アプリが構成されている方法ですべてのインスタンスを作成します。したがって、遅延バインディングを使用してジョブを実行できます。

ただし、Ginを使用すると、インスタンスをシングルトンにするかプロトタイプにするかを構成できます。遅延バインディングでこれを実行する場合は、さらにコードを記述する必要があります。

DIアノテーションはよく知られており、DIを知っている人なら誰でも@Injectについて知っています。これにより、コードが読みやすくなります。

Deferred BindingはGWTでのみ機能し、Deferred Bindingを使用してオブジェクトをワイヤリングする場合、jvmで単体テストを直接高速で実行するのに問題があります。Ginを使用する場合は、JVMでコードをテストするために、Guiceを使用するか、オブジェクトを手動でワイヤリングできます。

これらがGinの主な利点だと思います。

于 2011-06-30T16:04:42.067 に答える