TypeScript

TypeScript è un linguaggio di programmazione open source sviluppato da Microsoft. Si tratta di un'estensione di JavaScript a cui aggiunge un controllo dei tipi statico. Il capo del progetto è Anders Hejlsberg.

TypeScript è un linguaggio di programmazione open source sviluppato da Microsoft. Si tratta di un'estensione di JavaScript a cui aggiunge un controllo dei tipi statico. Il capo del progetto è Anders Hejlsberg.

Il linguaggio estende la sintassi di JavaScript in modo che qualunque programma scritto in JavaScript sia anche in grado di funzionare con TypeScript senza nessuna modifica. È stato progettato per lo sviluppo di grandi applicazioni ed è destinato a essere compilato in JavaScript per poter essere interpretato da qualunque web browser o app.

Origini

TypeScript nasce dal crescente bisogno di un linguaggio front-end per lo sviluppo di applicazioni JavaScript su larga scala e dalla necessità di sicurezza e robustezza, sia da parte di sviluppatori interni a Microsoft sia da parte di clienti e sviluppatori indipendenti.

Con l'aumento della complessità e delle dimensioni dei progetti web, JavaScript ha iniziato a mostrare limiti intrinseci in termini di scalabilità, sicurezza e manutenibilità del codice. Queste problematiche erano sentite sia dai team di sviluppo interni di Microsoft sia dalla comunità virtuale di sviluppatori esterni e clienti che richiedevano strumenti più solidi.

La mancanza di funzionalità avanzate, come il controllo statico dei tipi, la gestione degli errori e la modularizzazione, rendeva difficoltoso il mantenimento e l'evoluzione dei grandi codebase JavaScript.

TypeScript è stato concepito per colmare questa lacuna, offrendo un superset di JavaScript che introduce caratteristiche tipiche dei linguaggi di programmazione fortemente tipizzati, garantendo un ambiente di sviluppo più sicuro e affidabile.

Caratteristiche

TypeScript è un linguaggio che estende la struttura esistente di JavaScript aggiungendo o rendendo più flessibili e potenti varie sue caratteristiche:

Firma dei metodi

Classi

Interfacce

Moduli

Operatore => che permette di definire le funzioni anonime

Tipi di dato (opzionali)

Enumerazioni

Mixin tra classi

Da un punto di vista semantico TypeScript è molto simile a JScript .NET, un'altra implementazione dello standard ECMA-262 di Microsoft.

Annotazione tipizzata

TypeScript prevede un sistema di annotazione dei tipi, che consente di controllare i tipi durante la fase di compilazione. Questa caratteristica può essere ignorata se si vuole utilizzare la classica tipizzazione dinamica di JavaScript.

Le annotazioni disponibili per i tipi primitivi sono: number, boolean e string. Debolmente o fortemente tipizzati, le strutture sono di tipo any (qualunque).

Le annotazioni di tipo possono essere esportate in un file di dichiarazione (in inglese declarations file), per dare informazioni sui tipi a script TypeScript che usano librerie di supporto come, per esempio, Node.js e jQuery.

È possibile aggiungere annotazioni complesse all'inizializzazione di una variabile.

Supporto per ECMAScript 6

TypeScript aggiunge il supporto per le caratteristiche proposte nella versione Harmony di JavaScript presenti nello standard ECMAScript 6.

I costrutti supportati sono:

Classi (con ereditarietà)

Moduli

Sintassi per le funzioni anonime

Ancora prima che lo standard venisse definito appieno, Microsoft aveva dichiarato di voler continuare a sviluppare le caratteristiche di TypeScript mantenendole allineate con lo standard proposto.

Classi

TypeScript supporta le classi come definite nello standard ECMAScript 6, integrando il supporto per le annotazioni tipizzate.

Servizi correlati

Altre voci

L

Licenza PHP

La licenza PHP (PHP License) è la licenza sotto cui è distribuito software PHP.

Leggi la voce →
P

PHP

PHP (acronimo ricorsivo di "PHP: Hypertext Preprocessor", preprocessore di ipertesti; originariamente acronimo di "Personal Home Page") è un linguaggio di scripting interpretato, originariamente concepito per la programmazione di pagine web dinamiche. L'interprete PHP è un software libero…

Leggi la voce →
CSS AlabamaC

CSS Alabama

La CSS Alabama fu una nave a vapore della Marina degli Stati Confederati (sudisti). Fu al centro del caso giudiziario internazionale che porta il suo nome.

Leggi la voce →
C

C-HTML

C-HTML (abbreviazione di Compact HyperText Markup Language), anche chiamato i-mode-HTML è un sottoinsieme dell'HTML concepito per piccoli dispositivi come smartphone di prima generazione e PDA, come i cellulari i-mode dell'operatore giapponese DoCoMo. Il C-HTML aggiunge svariate caratteristiche…

Leggi la voce →
XiaomiX

Xiaomi

Xiaomi Corporation, formalmente registrata come Xiaomi Inc. (/ˈɕiɑʊ̯mi/, 小米科技S, Xiǎomǐ KējìP/) e nota semplicemente come Xiaomi, è un'impresa multinazionale cinese che opera nel campo dell'elettronica di consumo, fondata in Cina nel 2010 da Lei Jun e con sede a Pechino. Xiaomi produce cellulari,…

Leggi la voce →
E

Enterprise content management

Una soluzione di Enterprise Content Management (ECM) è l'insieme di strumenti che consentono la gestione della documentazione prodotta e ricevuta all'interno di un'organizzazione, indipendentemente dal suo formato.

Leggi la voce →