Frage

Ich habe viele Seiten über CLS-Kompatibilität gefunden.

Ich habe verstanden, dass CLS-Kompatibilität:

Viele peolple schreiben, dass „wenn Sie Code schreiben, sollten Sie es CLS-kompatibel schreiben.“ Aber wie weit kann ich lesen, gibt es keinen Grund, CLS-Kompatibilität in der generischen Software zu nutzen.

Habe ich recht, oder habe ich etwas verpasst?

War es hilfreich?

Lösung

Wenn Sie eine Bibliothek oder Rahmen zu schreiben macht es Sinn, die Bibliothek, um sicherzustellen, kann aus jeder CLR Sprache verwendet werden.

Andere Tipps

CLS-Compliance ist besonders wichtig, wenn Sie Bibliotheken sind zu verteilen -. Insbesondere CLS-kompatibel Garantien schriftlich, dass die Bibliotheken von allen CLS-kompatibelen Sprachen verwendbar sein werden,

Zum Beispiel Visual Basic ist nicht case-sensitive, während C # ist. Eine der Anforderungen der CLS-Kompatibilität ist, dass die öffentlichen (und geschützt) Mitgliedsnamen nicht nur von Fall unterscheiden sollten, damit sichergestellt wird, dass Ihre Bibliotheken sicher von Visual Basic-Code verwendet werden kann, oder jede andere .NET-Sprache, die auf unterscheidet nicht basierend Fall.

Die Antwort ist maximale Kompatibilität über .NET-Sprachen zu ermöglichen. CLS ist die lingua franca , die C # Baugruppen arbeiten mit F #, Eisen Python, C ++ / CLI, VB.NET, Boo und alle anderen .NET-Sprachen ermöglicht. Schritt außerhalb dieser Grenze und Ihre Montage kann richtig funktionieren, muss aber nicht.

Es kann nicht ein spezifisch Grund Code haben, sei CLS-kompatibel, aber die Leute beziehen sich auf sie als „best practice“ zu sein - etwas, was man tun sollte, weil es eine gute Gewohnheit ist, anstatt für ein bestimmtes Szenario messbar besser zu sein.

Mit anderen Worten: es ist eine gute Idee, , um Ihren Code CLS-kompatibel, wenn Sie einen Grund haben, nicht .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top