4

.NET FrameworkのCLS (共通言語仕様)の目的について混乱しています。

私の理解では、.NETを使用すると、ある言語でライブラリを作成して別の言語で使用でき、CLRによってこの機能が有効になります。CLSの目的は、実装されている言語に関係なく、他のオブジェクトと完全に対話することであることを私は知っています。

CLSとは正確には何ですか。その目的は何ですか?

4

2 に答える 2

5

これCLSは、コンポーネントの開発者およびコンパイラ作成者を対象としたガイドラインです。コンポーネントを生成し、言語のサポートを構築するために、何が許可され、何が許可されないかを指定します。これは、コンポーネントが移植可能であり、完全に互換性があり、コンポーネントでCLS実行できるすべての準拠言語から消費/対話できるようにするためです。CLR.

CLRは、実装によって公開および適用される仕様があります。はCLSあくまで目安です。を壊すコンポーネントを作成することはできますが、CLSで正常に動作しCLRます。ただし、その場合、特定の言語と相互運用できない可能性があります。

明らかに、これCLSはコンパイラの作成者や言語設計者にとって非常に重要です。しかし、コンポーネント開発者であっても、CLS完全な相互運用性を目指しているのであれば、ルールの範囲内にとどまることが重要です。

于 2013-03-02T18:32:39.260 に答える
0

.Net を使用すると、ある言語でライブラリを作成し、それを別の言語で使用できると思います。これを行うには、CLR があります。CLS とは正確には何ですか?その目的は何ですか?

この言語統合は素晴らしいものですが、実際にはプログラミング言語は非常に異なっていますCLR

Microsoft はCommon Language Specification ( CLS) を定義しており、コンパイラ ベンダーが CLR に基づいて他の CLS 準拠言語によって記述された他のコンポーネントと互換性のある型を生成する場合に、コンパイラ ベンダーがサポートする必要がある機能の最小セットを詳述しています。

于 2013-03-02T19:08:48.810 に答える