StructureMap と Ninject の中で最も優れた IoC はどれですか?
これは以下とマージする必要があります:ベスト インジェクション フレームワーク
状況によります。単純なコンテナが必要な小さなプロジェクトでは、Ninjectを選択します。私はそれが小さくて細いという事実が好きです。私は属性が嫌いですが、それを回避する方法があります。
単純なIoC以上のものが必要になる可能性がある大きなソリューションの場合は、Castleのものを使用します。そこでは多くの柔軟性があり、xml、属性、またはDSLを使用して設定を行うことができ、後で必要になった場合はIoCをAOPテリトリーに拡張できます。
私はまだ構造マップを試していません。IoCよりもはるかに多くのことをしているようです。しかし、私はそれについてコメントすることはできません。NinjectとStructuremapは異なる目的を果たしていると思うので、コンテキストについてもう少し知らずに2つを選択するのは難しいです。通常、より良いのは相対的な概念です:-)
私はStructureMapを使用しているので、おそらくそれが最良だと思います。しかし、おそらく将来的にはUnityを使用する予定です。これは、MSがサポートされているためです。つまり、ドキュメントが改善され、1人の人の善意に依存することが少なくなりますが、その人は非常に善意です。もちろん、フレームワークがいいからといって変更することはありません。何かが機能する限り、私はアップグレードすらしません。
ベストはありません。それらのほとんどは、ほぼ同じ方法で必要なことの 90% を実行します。特定の状況では、一方が他方よりも柔軟な場合があります。
選択肢があれば、ウィンザーを選びますが、それ以外のことは何もありません。しかし、Ninject や StructureMap を使用しなければならないとしても、不満はありません。どちらも優れたフレームワークです。
現在、Compact フレームワークで実行できるのは Ninject だけであることはわかっています。それならNinjectが最適です。
主に XML が嫌いなので、Spring.NET が少し怖いです。しかし、多分それは私が思うほど悪くはありません、私を怒らせないでください:)
私はこのプロセスを自分で行っています。ninject で開始することをお勧めします。非常に軽量で、エントリーレベルが非常に低いという理由だけで. 数時間で起動して実行できます。
IoC を念頭に置いてシステムを設計し、使用する IoC フレームワークに関係なく、設計はほぼ同じであることがわかります。
必要に応じて、基本的なフレームワークの配管以外にやり直しをしなくても、NInject を StructureMap のようなものに交換できるはずです。
あなたの最善の策は、1つを使い始めて、見つけた問題を確認してから、別の方法がニーズにより適しているかどうかを判断することです.
そこにあるフレームワークは、新しいバージョンが至る所でリリースされ、ダイナミックな時期を迎えているようです. また、IoC などである MEF は、状況をさらに変化させる可能性があります。