質問

依存性注入についてよく読んで、グーグルで研究を行い、理論的にはそれが何ができ、どのように機能するかを理解していますが、それを使用して実際のコードベースを見たいです(Java / guiceが望ましい) 。

誰でも私にオープンソースプロジェクトを教えてもらえますか?コードを閲覧し、セットアップ全体を見ると、Webで見つけた紹介記事の通常のスニペットよりも多くのことがわかります。事前に感謝します!

役に立ちましたか?

解決

あなたがJavaランドにいることはわかっていますが、.NETの分野では、コントロールコンテナの反転を使用して記述されたいくつかのオープンソースアプリがあります。 UIモジュールに依存関係の解決への参照がない CodeCampServer を確認してください。モジュール。作業を行うHttpModuleがあります。 (HttpModuleは、ASP.NETでイベントを処理するためにプラグインできる外部ライブラリです。CodeCampServerでは、UIプロジェクトは実行時にこのDependencyRegistrarModuleを読み込みますが、コンパイル時の参照はありません。)

他のヒント

ウェーブプロトコルサーバーは私のお気に入りのサンプルアプリです。

この正確な問題に少し苦労しました。それはとても抽象的でシンプルなので、私はいつも<!> quot;間違えていました<!> quot;を心配していました。

バインディングを設定するGuiceモジュールがメインプロジェクトの一部であったため、他のプロジェクトに依存するメインプロジェクトで使用していました。

ようやく、ライブラリがモジュール自体を提供する必要があることに気付きました。その時点では、モジュールのインスタンス(特定のインスタンスではなく)と、それにバインドされているインターフェイスのみに依存できます。

さらに一歩進んで、新しい ServiceLoader メカニズム。その後、クラスパス(db-real.jarとdb-mock.jar)を変更するだけで依存関係を入れ替えることができます。

依存性注入は、適切に使用するとビューから消える方法があると思います。それは、アプリケーションの初期化/配線の方法にすぎません。フレームワークの追加機能を見ているよりも見栄えがよければ最低限の依存関係の注入ではなく、手で。

編集:例を見つけるのではなく、実際に使用を開始することをお勧めします。そして、あなたが思うように仕事をすることができない場合は、戻ってここに質問を投稿してください:-)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top