74

CLS 準拠に関する多くのページを見つけました。

私は、CLS 準拠について次のことを理解しました。

「コードを書くなら、CLSに準拠して書くべきだ」と多くの人が書いています。しかし、私の知る限り、一般的なソフトウェアで CLS 準拠を使用する理由はありません。

私は正しいですか、それとも何か見逃しましたか?

4

4 に答える 4

56

ライブラリまたはフレームワークを作成する場合、そのライブラリを任意の CLR 言語から使用できるようにすることは理にかなっています。

于 2009-12-01T20:15:45.990 に答える
50

ライブラリを配布する場合、CLS 準拠は特に重要です。具体的には、CLS 準拠の記述により、ライブラリがすべての CLS 準拠言語で使用できることが保証されます。

たとえば、Visual Basic では大文字と小文字が区別されませんが、C# では大文字と小文字が区別されます。CLS 準拠の要件の 1 つは、パブリック (および保護された) メンバー名が大文字と小文字だけで異なるべきではないということです。これにより、Visual Basic コード、またはに基づいて区別されないその他の .NET 言語でライブラリを安全に使用できるようになります。場合。

于 2009-12-01T20:18:22.413 に答える
20

その答えは、.NET 言語間で最大限の互換性を確保することです。CLS は、C# アセンブリが F#、Iron Python、C++/CLI、VB.NET、Boo、およびその他すべての .NET 言語で動作することを可能にする共通言語です。その境界の外に出ると、アセンブリが正しく機能する可能性がありますが、必ずしもそうとは限りません。

于 2009-12-01T20:16:28.717 に答える
12

コードを CLS に準拠させる特定の理由はないかもしれませんが、人々はそれを "ベスト プラクティス" と呼んでいます。これは、特定のシナリオで測定可能なほど優れているというよりは、良い習慣だから行うべきことです。

つまり、そうしない理由がない限り、コードを CLS に準拠させることをお勧めします。

于 2009-12-01T20:15:40.593 に答える