「公式な」定義があるかどうかわかりません。 Fowlerの記事は私がDIで読んだ最初の部分でした。それがあなたのために十分な権威を持っていないのであれば、私はSOがどのように改善するのか分かりません。
「見た」とはどういう意味ですか?どのくらいの書類を読んでいますか?あなたはそれを使ってアプリケーションを書くことを試みましたか?あなたがSpringとGuiceでコードを書いたのなら、あなた自身でこれを調べることはすでにかなりうまくいっています。もしあなたがちょうどGoogleが戻ったいくつかの記事を読んだら、あなたはもっとやる気があります。
「Spring」の「コンテキスト」は、オブジェクトをインスタンス化するために使用されるファクトリを意味します。私は通常、アプリケーションまたはWebアプリケーションごとに1つを持っています。私のアプリケーションは、通常、オブジェクトが作成される「コンテキスト」です。
DIのライフサイクルは変わりません。オブジェクトが作成、初期化、使用、および破棄されたときに関係します。
コンポーネントは、単一のソフトウェア成果物内のデータと操作です。サービスは、通常はネットワーク上に分散されたビジネス上重要な操作を実行する特別な種類のコンポーネントです。サービスは通常コンポーネントですが、すべてのコンポーネントがサービスではありません。彼らは同義語ではありません。
DIフレームワークなしでコンポーネントまたはサービスを書き込むことができます。それが注入されたオブジェクトのコンポーネントを呼び出すのに役立つなら、私のゲストになれます。
私は不思議です:なぜこれらのものの名前に重点を置いていますか?命名は確かに重要ですが、DIの主な問題ではありません。
を持っているこれは、閉鎖を避けるために、このコミュニティのwikiをしてください行い、本当の問題ではありません。適切な答えを得るために、1つの具体的な詳細に焦点を当てた複数の質問をすることをお勧めします。 – lothar