Domanda

Ho trovato un sacco di pagine circa la conformità CLS.

Ho capito che CLS rispetto:

Molti peolple scrivono che "se si scrive codice, si dovrebbe scrivere è compatibile con CLS." Ma, per quanto posso leggere, non v'è alcuna ragione per usare la conformità CLS nel software generico.

Ho ragione, o mi sono perso qualcosa?

È stato utile?

Soluzione

Se si scrive una libreria o di un quadro ha senso per garantire la vostra biblioteca può essere utilizzato da qualsiasi linguaggio CLR.

Altri suggerimenti

CLS-conformità è particolarmente importante se si sta distribuendo librerie -. In particolare, la scrittura garantisce CLS compliant che le librerie saranno utilizzabili da tutti i linguaggi CLS-compliant

Per esempio, Visual Basic non è case-sensitive, mentre il C # è. Uno dei requisiti di conformità CLS è che i nomi dei membri pubblici (e protetti) non devono differire solo per caso, assicurando così che le librerie possono essere utilizzate in modo sicuro da codice Visual Basic, o qualsiasi altro linguaggio .NET che non differenzia basa su caso.

La risposta è quella di consentire la massima compatibilità tra linguaggi .NET. CLS è il lingua franca che permette C # assemblee di lavorare con F #, ironpython, C ++ / CLI, VB.NET, Boo e tutti gli altri linguaggi .NET. Passaggio al di fuori quel confine e la vostra assemblea può funzionare correttamente, ma non necessariamente.

Non ci può essere un specifica motivo per avere il vostro codice sia compatibile con CLS, ma la gente si riferiscono al fatto che è un "best practice" - qualcosa che si dovrebbe fare perché è una buona abitudine, piuttosto che essere misurabile migliore per un particolare scenario.

In altre parole, E 'una buona idea per rendere il codice compatibile con CLS meno che non abbiate un motivo non a.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top