質問

簡単な質問、私はいくつかの.NETのものについて読んでいます。何人かの人々が話している方法は、.NETライブラリを複数の.NET言語で使用できることを意味します。たぶんそれは私の側での希望的な考えです笑。たとえば、C#でプログラムされたTAOフレームワークをBOO .NET言語で使用できますか?
私が説明できる唯一の方法は、ライブラリが.NETで実行するためにBytecodeにコンパイルされ、コンパイルされるあらゆる言語でも使用できる場合です。 .netについてはあまり知りません ^ - ^

ありがとう

役に立ちましたか?

解決

任意のAssmebly(ILコードとマニフェスト)は、任意の.NET言語で使用できます - コードがCILに準拠しており、 CLS (共通言語仕様)。

から MSDN (CLS):

実装された言語に関係なく、他のオブジェクトと完全に対話するには、オブジェクトは、相互運用しなければならないすべての言語に共通の機能のみを発信者に公開する必要があります。このため、多くのアプリケーションが必要とする一連の基本的な言語機能である共通言語仕様(CLS)が定義されています。 CLSルールは、共通型システムのサブセットを定義します。つまり、CLSでより厳格なルールが定義されている場合を除き、共通タイプシステムに適用されるすべてのルールがCLSに適用されます。 CLSは、開発者がさまざまな言語で利用できるように頼ることができる一連の機能を定義することにより、言語の相互運用性を高めるのに役立ちます。 CLSは、CLSコンプライアンスの要件も確立しています。これらは、管理されたコードがCLSに適合するかどうか、および特定のツールがCLS機能を使用する管理コードの開発をどの程度サポートするかを判断するのに役立ちます。

他のヒント

あなたの質問を正しく理解した場合は、たとえばC#またはDelphi Prismで.NETライブラリを作成し、ILにコンパイルしてアセンブリを取得できます。次に、VB.NETプロジェクトでこのアセンブリを参照して使用できます。

相互運用性には制限があります。特に、異なる言語の根底にあるタイプシステムが大きく異なる場合。しかし、BooとC#は構文とは非常に似ているため、これらの間に問題はないはずです。

私たちはVB.NETプロジェクトで問題なくC#ヘルパーライブラリを使用します - 単一のプロジェクトは単一の言語のみを処理できますが、ソリューションにはそれぞれ独自の言語を使用して複数のプロジェクトを含めることができます(またはMSILにコンパイルする言語で書かれたアセンブリを参照)フルとデバッグ機能

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top