CLS - Common Language Specification

.::Home::.

.::Introduzione::.

1.Panoramica

4.DataBase

.::Presentazioni PPT::.

.::Link::.

.::DownLoad::.

 

Il CLS definisce un sottoinsieme del Common Type System al quale tutti i fornitori di librerie di classi e progettisti di linguaggi che puntano al CLR, devono aderire.

Il CLS è una serie di regole che si applicano per generare gli assembly.

Se un componente scritto in un linguaggio (ad esempio C#) dovrà essere utilizzato da un altro linguaggio (ad esempio VB.NET), allora chi scrive il componente dovrà aderire ai tipi e alle strutture definite dal CLS.

Ad esempio, il tipo Int32 è compatibile con il CLS ed i linguaggi e gli strumenti possono aspettarsi che altri linguaggi e strumenti conformi al CLS sappiano come utilizzarlo correttamente

Una libreria costituita da codice aderente al CLS è chiamata "CLS Framework". Queste librerie sono progettate per essere utilizzate da un gran numero di linguaggi e strumenti di sviluppo.

I CLS framework devono sottostare ad una serie di regole, tra le quali:

  • Evitare l'uso di nomi utilizzati comunemente come parole chiave nei linguaggi di programmazione
  • Non dovrebbero permettere all'utente di costruire tipi nidificati
  • Si assume che le implementazioni dei metodi con lo stesso nome e signature in differenti interface siano indipendenti

Un linguaggio o tool di sviluppo progettato per accedere a tutte le caratteristiche fornite dai CLS Framework, ma non necessariamente in grado di produrne di nuove, è detto CLS Consumer.

Un CLS Consumer deve essere in grado di svolgere determinati compiti, tra i quali:

  • Supportare chiamate da ogni metodo o delegate conforme al CLS
  • Possedere un meccanismo per chiamare i metodi con nomi che sono keyword nel linguaggio.
  • Creare una istanza di ogni tipo conforme al CLS
  • Leggere e modificare campi conformi al CLS
  • Accedere a tipi nidificati
  • Accedere a qualunque proprietà ed evento aderente al CLS

Un superset del CLS Consumer, che offre al programmatore una totale libertà di azione è detto invece CLS Extender.

 

 

.::^top^::.

(2002) A cura di Carlo Becchi