Dart (linguaggio)

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da DART (linguaggio))
Jump to navigation Jump to search
Dart
linguaggio di programmazione
Dart programming language logo.svg
AutoreGoogle
Data di origine18 ottobre 2011
Ultima versione2.5.1 - 27 settembre 2019
Utilizzodart.dev
Paradigmiprogrammazione multi-paradigma, programmazione orientata agli oggetti, programmazione funzionale, programmazione imperativa e programmazione riflessiva
Tipizzazioneopzionale
Specifiche di linguaggioDart Language Specification
Estensioni comuni.dart
Influenzato daCoffeeScript,[senza fonte] Java, JavaScript, Strongtalk[senza fonte]
Implementazione di riferimento
Sistema operativomultipiattaforma
Licenzalicenza BSD
Sito webdart.dev

Dart (originariamente chiamato Dash[1]) è un linguaggio di programmazione sviluppato da Google. È stato presentato alla conferenza "GOTO Aarhus 2011" dal 10 al 12 ottobre 2011[2]. Lo scopo di Dart è quello di "sostituire JavaScript come lingua franca per lo sviluppo web sulla piattaforma web aperto"[3].

Il compilatore Dart permette di scrivere programmi sia per il web che per desktop e server, attraverso l'uso di due diverse piattaforme:

  • Dart Native: Per i dispositivi (smartphone, desktop, server, and altro), Dart Native include sia la Dart VM con una compilazione JIT (just-in-time) e un compilatore AOT (ahead-of-time) per la produzione di codice eseguibile.
  • Dart Web: Per il web, Dart Web include sia un compilatore per lo sviluppo (dartdevc) che uno per la produzione (dart2js)

Motivo per un nuovo linguaggio[modifica | modifica wikitesto]

L'intento di Dart è quello di risolvere i problemi di JavaScript (che, secondo il memo interno trapelato,[3] non possono essere risolti con l'evoluzione del linguaggio) offrendo al tempo stesso migliori prestazioni, la possibilità di sviluppare più facilmente strumenti utili alla gestione di progetti di grandi dimensioni e migliori funzionalità legate alla sicurezza[1]. Gli ingegneri di Google stanno sviluppando un IDE basato sul cloud chiamato Brightly, che potrebbe essere la prima applicazione sviluppata con Dart. Google offrirà un cross-compilatore che compila il linguaggio Dart in ECMAScript 3 al volo, per compatibilità con browser privi del supporto nativo per Dart. Ci sarà anche uno strumento per convertire il codice delle chiusure tipizzate in linguaggio Dart.[4]

La VM Dart ed il cross-compilatore Dart dovevano essere disponibili e integrati nel browser Chrome già nel tardo 2011[1] ma Google stessa nel 2017 rinuncia all'integrazione con il browser data la forte opposizione esercitata dai maggiori concorrenti per la standarizzazione del linguaggio[5].

Esempio[modifica | modifica wikitesto]

Il famoso esempio Hello world:

main() {
  print('Hello World!');
}

Una funzione per calcolare l'n-esimo Numero di Fibonacci:

int fib(int n) {
  if (n <= 1) return n;
  return fib(n - 1) + fib(n - 2);
}

main() {
  print('fib(20) = ${fib(20)}');
}

Note[modifica | modifica wikitesto]

  1. ^ a b c Alex Chitu, Dash, Google's Alternative to JavaScript, su Dash, Google's Alternative to JavaScript, 13 settembre 2011. URL consultato il 21 luglio 2019.
  2. ^ Presentazione: "Opening Keynote: Dart, a new programming language for structured web programming" - conferenza GOTO Aarhus 2011. Presentazione ufficiale del linguaggio Dart, 10 ottobre 2011
  3. ^ a b documento "Il futuro di JavaScript" dal nostro "JavaScript Summit" della settimana scorsa - Mail interna a Google trapelata]
  4. ^ Google Dart to "ultimately ... replace JavaScript"
  5. ^ Dart VM - Chrome Platform Status, su www.chromestatus.com. URL consultato il 21 luglio 2019.

Voci correlate[modifica | modifica wikitesto]

  • Document Object Model (DOM) - una convenzione per rappresentare ed interagire con oggetti in documenti HTML, XHTML, ed XML
  • HaXe - linguaggio di programmazione per applicazioni web simile a Dart
  • Opa - un altro linguaggio di programmazione per applicazioni web simile a Dart
  • TypeScript - un linguaggio di programmazione superset di JavaScript
  • Flutter - framework open-source per la realizzazione di interfacce grafiche in Dart

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autoritàLCCN (ENsh2014100182