DIコン(ダイコン)って何? うまいの?

 世間っていうかJava界ではIoC/DIコンテナなる物が流行りらしい(正確にはもう流行りはすぎて実用化のレベルに来ているようだ)。が、説明を一通り聞いてもそれが意味する物がわからない。

http://www.kakutani.com/trans/fowler/injection.html

 コンポーネントの内部実装の一部をインターフェイス化して、任意の実装を「外から与える」スタイルのコードを「軽量コンテナ」と呼ぶのかな? で、それをデザインパターン化した物がInversion of Control(IoC/制御の反転)で、その言葉が包括的すぎて意味不明だから、名称を直したのがDependency Injection(DI/依存性注入)という理解であってるのかな?

 さて、この理解が正しいのだとした場合、これが話題になる理由がわからない。C++でallocaterを設定するのに頻出するからだ(Yane3rdだったらDevice設定とかでも使う)。ありがちなのにパターン化されてなかった? それをビジネスアプリケーション層の全体に適用出来る事がわかったとか? それともEJBから解放される事が嬉しい? わからにゃい。

 ……多分、僕の理解が不完全なんだな。勉強が足りん<俺

PS

ってゆーかそもそも「コンテナ」がなんだかわからない。単にjava.awt.containerクラスの事か?