Dart un linguaggio di programmazione di Google
Un linguaggio di programmazione facile da imparare, da scalare e distribuibile ovunque
// ProgrammazioneDavide Bausach / 05-06-2017
È quasi un anno che non riesco più a scrivere aggiornamenti, purtroppo stringenti impegni di lavoro, che affliggono sempre noi sviluppatori, non mi hanno lasciato troppo tempo per dedicarmi anche alla cura del blog, nonostante molti dei progetti iniziati, e che meriterebbero approfondimento su queste pagine, si sono sviluppati ed evoluti.
Sono riuscito però negli ultimi tempi a dare un'occhiata a Dart, e sono felice di introdurvelo perché mi sta piacendo davvero molto. Dart è un linguaggio di programmazione realizzato da Google ed utilizzato in diversi dei loro prodotti come ad esempio AdWords, Google Fiber, Google Elections, Angular Dart, Google Shopping Express ma anche da alte aziende del settore informatico in alcuni dei loro prodotti.
La sintassi di Dart è molto simile a quella di JavaScript e può essere usato in modo fortemente tipizzato, un po' come TypeScript, ma anche in modo libero senza vincoli di dichiarazione e tipizzazione proprio in linea con una delle caratteristiche principali del linguaggio client del web per eccellenza, ed in fine anche combinando le due potenzialità, ovvero in modo misto.
La caratteristica principale di Dart è che grazie alla sua Virtual Machine è in grado di essere eseguito su ogni sistema operativo e permette di scrivere applicazioni CLI (Command Line Interface), applicazioni server side, proprio come NodeJs funziona in Single Tread e supporta la programmazione asincrona, ed applicazioni client side come JavaScript.
Attualmente però la Virtual Machine non è inclusa in nessun Browser tranne che in Dartium, una versione di Chromium open source che include la suddetta VM. Ovviamente Dartium esiste solo come progetto legato a Dart per cui non ci si aspetta che le nostre applicazioni client scritte in Dart siano fruibili dagli utenti; infatti esistono due vie per convertire il nostro codice Dart in JavaScript e renderlo utilizzabile in qualsiasi dei principali browser moderni: è possibile usare il tool dart2js o usare il framework Angular Dart, ovvero il già noto framework per le webapp Angular 2 ma scritto in Dart.
E le sorprese non finiscono qui perché con il framework Flutter, collegato al progetto Dart, è possibile scrivere applicazioni native per dispositivi mobili Android e iOS e grazie ad un motore di rendering interno alla VM le applicazioni saranno gestite in modo nativo dal framework e non saranno delle applicazioni web in una webview. Inoltre a quanto pare il recente progetto di Google per il nuovo sistema operativo Fuchsia, include Flutter per la realizzazione di app native.
Insomma un linguaggio del quale penso continueremo a sentir parlare sempre di più nei prossimi anni.
Per saperne di più e restare aggiornati sugli sviluppi vi invito ad approfondire sul sito ufficiale del linguaggio.