Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Common Language Infrastructure - Teknopedia
Common Language Infrastructure - Teknopedia
Niente fonti!
Questa voce o sezione sull'argomento programmazione non cita le fonti necessarie o quelle presenti sono insufficienti.

Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti.

Il Common Language Infrastructure (CLI), in italiano "infrastruttura del linguaggio comune", è una specifica aperta sviluppata da Microsoft, che descrive il codice eseguibile e l'ambiente di esecuzione che costituisce il cuore del framework .NET. La specifica definisce un ambiente che permette a più linguaggi ad alto livello di essere utilizzati su differenti piattaforme senza la necessità di essere riscritti per specifiche architetture hardware o software.

Specifica

[modifica | modifica wikitesto]

Il CLI è solo una specifica e non una implementazione, ed è spesso confusa con il Common Language Runtime che contiene caratteristiche non incluse nella specifica.

La specifica CLI è divisa in quattro parti:

  • Il Common Type System o CTS: un insieme di tipi di dato e di operazioni su di essi.
  • I Metadata: le informazioni sulla struttura del programma. Esse sono indipendenti dal linguaggio di partenza per permettere a programmi scritti in linguaggi differenti di comunicare tra loro.
  • La Common Language Specification o CLS.
  • Il Virtual Execution System o VES: il sistema che esegue i programmi CLI.

La compilazione di un programma in linguaggio .NET compatibile viene tradotto in istruzioni di tipo Common Intermediate Language (CIL), un linguaggio intermedio indipendente dalla piattaforma. Per eseguire un programma in linguaggio CIL, un VES specifico per la piattaforma traduce le istruzioni CIL in linguaggio macchina, un linguaggio direttamente comprensibile dal processore della piattaforma, che è così in grado di eseguire le istruzioni.

Standardizzazione e licenza

[modifica | modifica wikitesto]

Nell'agosto del 2000, Microsoft, Hewlett-Packard, Intel e altri lavorarono per standardizzare il CLI. Nel dicembre del 2001 lo standard fu ratificato dall'ECMA, e nell'aprile del 2003 è diventato uno standard ISO.

Mentre Microsoft e i suoi partner detengono i brevetti per il CLI, sia l'ECMA che l'ISO richiedono che tutti i brevetti essenziali per l'implementazione devono essere disponibili sotto termini "ragionevoli e non discriminatori" (RAND). Nel 2009 le aziende coinvolte si sono invece trovate d'accordo di rendere i brevetti disponibili sotto termini liberi da royalties o altrimenti di tipo RAND. L'accordo è detto Microsoft Open Specification Promise, e stabilisce che Microsoft e i suoi partner non perseguiranno legalmente coloro che realizzeranno una personale implementazione delle specifiche dello standard CLI (coperto da brevetto). Coloro che desiderano realizzare una propria implementazione delle specifiche CLI, hanno il permesso di estendere lo standard, tramite nuovi metodi, nuovi tipi per classi e nuovi namespace, ma non possono aggiungere o definire nuove interface.

Nel 2012, è stata pubblicata la nuova edizione dello standard CLI, ma questa nuova versione non è stata coperta dall'accordo Microsoft Open Specification Promise.

Implementazioni

[modifica | modifica wikitesto]
  • Microsoft .NET è l'implementazione commerciale della Microsoft, che contiene anche un'ampia collezione di risorse, librerie e strumenti di sviluppo.
  • Shared Source Common Language Infrastructure è una implementazione di riferimento della Microsoft disponibile sotto una licenza di tipo Shared source.
  • Mono è una implementazione open source e multipiattaforma sponsorizzata da Novell.
  • Portable.NET, parte del progetto dotGNU, è un'altra implementazione open source.

Collegamenti esterni

[modifica | modifica wikitesto]
  • (EN) Sito ufficiale, su iso.org. Modifica su Wikidata
  Portale Microsoft: accedi alle voci di Teknopedia che trattano di Microsoft
Estratto da "https://it.wikipedia.org/w/index.php?title=Common_Language_Infrastructure&oldid=145763380"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022