MEF(Managed Extensibility Framework)とEclipseプラットフォームの共通点と相違点は何ですか?MEFは、DIが追加されたEclipseと非常に似ていると思います。
あなたの考え?
MEF(Managed Extensibility Framework)とEclipseプラットフォームの共通点と相違点は何ですか?MEFは、DIが追加されたEclipseと非常に似ていると思います。
あなたの考え?
真に有用であり、マインドシェアを獲得するためには、拡張性が必要なクラスのアプリケーションがかなりあります。私が個人的に扱ってきた、拡張性を必要とするアプリケーションの最大のクラスは、IDE とコンテンツ管理システム (CMS) の 2 つです。
Microsoft は、アプリケーションの拡張性をサポートする必要がある場合に、すべてのソリューションとなるように MEF を作成しています。MEF チームは Visual Studio チームと提携し、Visual Studio 2010 の WPF エディターは MEF フレームワークを広範に使用しています。ただし、MEF チームは、拡張性を必要とする .NET アプリケーションはすべて、IDE だけでなく MEF フレームワークを使用することでメリットが得られると明言しています。MEF フレームワークが IDE で使用される最初の実世界のテストを取得しているという事実は、単なる偶然です。
一方、Eclipse プラットフォームは、IDE の構築に必要なコンポーネントの完全なセットです。これらのコンポーネントのサブセットを使用することで、IDE ではないリッチ アプリケーションを作成できます。しかし、彼らのプラグイン開発環境がどこまで通用するかは明らかではありません。
つまり、MEF は、拡張性を必要とするあらゆる .NET アプリケーションで全面的に使用できるように設計されていますが、たまたま実際に Visual Studio 2010 でデビューする予定です。
Eclipse プラットフォームは、IDE を構築するために必要な一連のコンポーネントとして始まりました。ただし、これらのコンポーネントのサブセットを選択することで、他のアプリケーションも構築できます。
MEFは、EclipseよりもOSGiに匹敵します。
この質問を参照してください:「MEFOSGi for .NETですか?」。
OSGi には DI があり、インストール可能なモジュールとして提供され、組み込みではありません。DS、Blueprint、iPOJO を参照してください。