- 2007-12-19 (水)
- 技術
最近Spring Frameworkをいじる機会が多いんですけど、たまに聞くIoCコンテナの意味が全然分からなかった。
ちょっと調べてみたのでそれをメモメモ。
IoCコンテナとはInversion of Controlの略で、直訳すると「制御の反転」という意味になるよう。
全然意味が分からないので、もうすこし人間語で・・・
どうやら
「Frameworkがコンポーネントを呼び出す」
ということだそうです。
なるほど、今までは自分たちが作成したコンポーネントがFrameworkを呼び出していたのに、IoCコンテナではFrameworkがコンポーネントを呼び出してくれる。
そのままですねw
つまりSpring FrameworkではXML設定ファイルにオブジェクト間の連携を記述し、そのオブジェクトの利用者は自らがNew(インスタンス生成)をしないということがこのIoCコンテナという名前の由来なんですね。
なるほど、やっと理解ができました。
ちなみに今はIoCコンテナという呼び方ではなくDIコンテナと呼ばれています。
これはソフトウェア技術者のマーティン・ファウラーさんが作成した言葉だそうです。
DIコンテナは、正式にはDependency Injection(依存性の注入)とう言葉の略で、あるオブジェクトに対して、使うオブジェクトをセットすることを意味しています。
注入~注入~。(注入って言うと響きはいいけど、難しいよね)
これでNewをしないでよいのですね。
結果的にIoCコンテナとDIコンテナは一緒の意味でした。
な~~んだ!
- Newer: 超シンプルなeclipseプラグインを作ってみた
- Older: prototype.jsのEvent.observeを使ってみる
Trackback:0
- TrackBack URL for this entry
- http://hisasann.com/cgi-bin/mt/mt-tb.cgi/736
- Listed below are links to weblogs that reference
- IoCコンテナってなあに? from HouseTect, JavaScriptな情報をあなたに





