Pourquoi devrais-je écrire CLS code conforme?
-
11-09-2019 - |
Question
Je l'ai trouvé beaucoup de pages sur la conformité CLS.
Je l'ai compris que CLS conformité:
- est un moyen de garantir la compatibilité différente de montage .
- est un moyen de déclarer le code de sécurité élevé
De nombreux peolple écrivent que « si vous écrivez du code, vous devriez écrire conforme CLS. » Mais pour autant que je peux lire, il n'y a aucune raison d'utiliser la conformité CLS dans le logiciel générique.
Ai-je raison ou ai-je raté quelque chose?
La solution
Si vous écrivez une bibliothèque ou d'un cadre, il est logique d'assurer que votre bibliothèque peut être utilisée de toute langue CLR.
Autres conseils
CLS-conformité est particulièrement important si vous distribuez des bibliothèques -. En particulier, l'écriture des garanties conformes CLS que vos bibliothèques seront utilisables par tous conformes CLS langues
Par exemple, Visual Basic n'est pas sensible à la casse, alors que C # est. L'une des exigences de conformité CLS est que public (et protégés) les noms des membres ne diffèrent pas seulement par cas, assurant ainsi que vos bibliothèques peuvent être utilisées en toute sécurité par code Visual Basic, ou tout autre langage .NET qui ne repose fait pas de distinction sur cas.
La réponse est de permettre une compatibilité maximale entre les langages .NET. CLS est le lingua franca qui permet aux assemblées de C # pour travailler avec F #, Python fer, C ++ / CLI, VB.NET, Boo et tous les autres langages .NET. Étape en dehors de cette limite et votre assemblage peut fonctionner correctement, mais pas nécessairement.
Il ne peut pas être spécifique raison d'avoir votre code soit conforme CLS, mais les gens font référence à étant une « meilleure pratique » - quelque chose que vous devriez faire parce que c'est une bonne habitude, plutôt que d'être mieux pour un mesurablement scénario particulier.
En d'autres termes, il est une bonne idée pour rendre votre code conforme CLS, sauf si vous avez une raison pas .