Por que eu deveria escrever um código compatível com CLS?
-
11-09-2019 - |
Pergunta
Eu encontrei um monte de páginas sobre o cumprimento CLS.
Eu entendi que o cumprimento CLS:
- é uma maneira de garantir diferente compatibilidade montagem .
- é uma maneira de declarar o código alta segurança
Muitos peolple escrever que "se você escrever o código, você deve escrevê-lo compatível com CLS." Mas, tanto eu posso ler, não há nenhuma razão para o cumprimento uso CLS no software genérico.
Estou certo, ou eu perdi alguma coisa?
Solução
Se você escrever uma biblioteca ou um quadro que faz sentido para garantir a sua biblioteca pode ser usado de qualquer linguagem CLR.
Outras dicas
CLS-conformidade é particularmente importante se você estiver distribuindo bibliotecas -. Especificamente, escrevendo CLS garantias compatíveis que as suas bibliotecas será utilizável por todos os idiomas compatíveis com CLS
Por exemplo, Visual Basic não é sensível a maiúsculas, enquanto que C # é. Um dos requisitos de compatibilidade com CLS é que público (e protegida) nomes de membro não deve diferir apenas por caso, garantindo assim que as bibliotecas podem ser usados ??com segurança por código Visual Basic, ou qualquer outra linguagem .NET que não diferencia com base em caso.
A resposta é permitir o máximo de compatibilidade através linguagens .NET. CLS é a língua franca que permite que os conjuntos C # para trabalhar com F #, Iron Python, C ++ / CLI, VB.NET, Boo e todas as outras linguagens .NET. Passo fora desse limite e sua montagem pode funcionar corretamente, mas não necessariamente.
Pode não haver um específica razão para ter seu código seja compatível com CLS, mas as pessoas estão se referindo a ele ser um "melhor prática" - algo que você deve fazer, porque é um bom hábito, ao invés de ser comprovadamente melhor para um cenário particular.
Em outras palavras, é uma boa ideia para fazer seus CLS código compatível com a menos que você tenha uma razão não a.