.NETにおけるDI

Enterprise Library 2.0を特徴づけるDI機能とは - @IT
僕は、DIあるいはAspectの挿入・バインディングの方法にもいろいろあるが、.NET Frameworkにおいては元々ある「属性」を使うのが一番自然だと考えている。必ずしもDIコンテナ(と設定ファイル)による実行時バインディングやAspectJのようなコンパイル時のバインディングを否定したりはしないが、僕はコードの外に出てしまっている設定ファイルで挿入箇所を指定していくよりも、「属性」のようにコード内にはっきりと解る形で、記述されていた方が保守がしやすいし、明示的だと思っている。
上の記事を読む限り、Enterprise Library 2.0では属性によるDIを行っていおり、自分の考え方もまぁ間違いではないかなと思った。

コメントを残す