« [.NET] Unity Application Block を使ってみる (2) | トップページ | SQL Server 2008 を導入するときには、 クライアント PC ごとにアップデート作業が必要 ( …になるかも ) »

2008年9月23日 (火)

[.NET] Unity Application Block を使ってみる (3)

( その2 ← )

ということで、 IoC ( 制御の反転 ) の実装をやってみる。
…あっさり成功。
# これもまぁ、 あたりまえというか、 DI コンテナなら出来てくれんとイカンのですが f(^^;

で。 IoC ってのは…
例えば、 アセンブリ ( dll ) が、 [本体] と [プラグイン] に分かれていて、 [本体] から [プラグイン] の機能を呼び出すのだとします。 制御の方向は [本体] ⇒ [プラグイン] ですね。
このとき、 アセンブリ間の参照関係 ( 依存関係 ) も、 普通に作ると [本体] → [プラグイン] という方向になってしまいます。 すると… [プラグイン] を変えたり増やしたりするたびに、 [本体] の変更も必要になってしまいます。
そこで、 [本体] の方に、 プラグインの機能のインターフェースを定義しちゃいます。 このインターフェースに合わせてプラグインを作れ、 というわけですね。 インターフェース定義が本体側にあるので、 アセンブリ間の参照関係 ( 依存関係 ) は逆転して [本体] ← [プラグイン] となります。
# あれ? こういう説明の仕方をすると、 「制御の反転」 じゃなくて 「依存関係の反転」 ってイメージになっちゃうな… う~む、 困った。 f(^^;

ともあれ、 これで、 来月話すネタの裏が取れました。
さぁ、 マジメにネタ用のコードを書かんと! f(^^;

|

« [.NET] Unity Application Block を使ってみる (2) | トップページ | SQL Server 2008 を導入するときには、 クライアント PC ごとにアップデート作業が必要 ( …になるかも ) »

プログラミング」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [.NET] Unity Application Block を使ってみる (3):

« [.NET] Unity Application Block を使ってみる (2) | トップページ | SQL Server 2008 を導入するときには、 クライアント PC ごとにアップデート作業が必要 ( …になるかも ) »