La breve risposta a "Qual è lo stato di Dart?" è: è in Technology Preview. Questo è un modo speciale di dire "abbiamo lanciato presto in modo da poter open source tutto e lavorare all'aperto." "Anteprima tecnologica" significa anche "non siamo ancora in Alpha, abbiamo ancora molto lavoro da fare, ma c'è abbastanza per giocare e dare feedback".
Il tempo di Internet può funzionare per le notizie o le iterazioni di prodotti di consumo, ma probabilmente non per qualcosa di così ambizioso e ampio come lo sforzo Dart. Ricorda, Dart non è solo una lingua. È anche un set di librerie, una migliore interfaccia DOM, una macchina virtuale, un editor e l'integrazione con Chrome. Il team sta lavorando molto su molti thread paralleli, ma personalmente mi aspetto che siano trascorsi sei mesi prima che la maggior parte dei pezzi sia posizionata.
Non è vero che Dart funziona solo su Chrome. Dart si compila in JavaScript e prende di mira i browser moderni. Certo, Chrome sarà il primo ad essere lanciato con il supporto Dart nativo, ma garantire che Dart si compili in JavaScript efficace e performante è un vincolo e una caratteristica fondamentale del progetto.
Il quadro generale è che Dart diventerà un ambiente di sviluppo "batterie incluse" per le app Web moderne. L'obiettivo principale di Dart è garantire che il Web rimanga una piattaforma produttiva e divertente per lo sviluppo e la distribuzione di app. Ciò significa che molti pezzi devono andare a posto: lingua, librerie, editor, macchine virtuali e integrazione del browser. Nel complesso, riteniamo che Dart sarà un'opzione interessante per i moderni sviluppatori di app Web.
La grande grande immagine GRANDE è che vogliamo portare gli sviluppatori di app sul Web e vogliamo che gli sviluppatori Web scrivano app Web più complesse. Se usano Dart, è fantastico. Ma alla fine, la lingua non ha importanza. L'unica cosa che conta è che si stanno costruendo app Web moderne complesse, lato client, alta fedeltà, bassa latenza e belle.
La lingua è in uno stato di sviluppo. Vediamo nuove versioni delle specifiche circa una volta al mese. Mancano le funzionalità principali, come la riflessione, ma continuiamo a ripetere. Abbiamo appena aggiunto il supporto map () alla raccolta, ad esempio. Gilad Bracha, un ragazzo che conosce le sue lingue (avendo creato NewSpeak e lavorato su Java Lang Spec) e Josh Bloch, un ragazzo che conosce le sue librerie (avendo scritto Effective Java e lavorato sulle librerie Java Collection) stanno lavorando sul linguaggio e biblioteche, insieme al gruppo maggiore.
Le persone che considerano fortemente Dart è difficile da generalizzare e probabilmente non importa molto per te. Dovresti trarre le tue conclusioni dopo aver giocato con Dart. La mia esperienza è che gli sviluppatori di app di altre piattaforme come Java, C # o Flex trovano Dart attraente e familiare. La mia esperienza con gli sviluppatori JavaScript è divisa. Se lo sviluppatore JavaScript ha anche creato app su altre piattaforme, sono cautamente ottimisti su Dart (o, almeno, sulla soluzione che sta cercando di fornire). Se quello sviluppatore JavaScript è cresciuto su JavaScript e ha programmato solo in JavaScript, c'è più esitazione. Questa potrebbe essere una preoccupazione fondamentale per la lingua, o esitazione nel lasciare una zona di comfort, o semplicemente non imbattersi in casi limite con JavaScript. Questa è solo generalizzazione, ma io '
Per quanto riguarda la quota di mercato, è estremamente presto nel gioco. Probabilmente non è la domanda giusta da porre, dato che Dart non sta nemmeno spedendo. Una domanda più interessante sarebbe: "Qual è la quota di mercato delle app sul Web?" e poi vai a capire come possiamo affrontarlo.
Per quanto riguarda una vetrina di un'app Web, il team di Dart ha creato Swarm, un lettore di news elegante. Sfortunatamente, lo abbiamo solo nel codice sorgente in questo momento: http://www.dartlang.org/samples/index.html
Per quanto riguarda alcune funzionalità "killer", direi che ce ne sono alcune piuttosto interessanti:
- i tipi opzionali sono fluidi, aggiungono annotazioni e documentazioni per umani e macchine.
- Gli isolati sono un ottimo modo per raggiungere la concorrenza in modo sicuro.
- Le librerie (modularità) sono strettamente necessarie per lo stack Web e Dart ha librerie e classi.
- Le istantanee consentiranno un avvio estremamente rapido
- Le librerie in bundle (come raccolte, cronometro, ecc.) Unificheranno le basi di codice e ridurranno il codice spedibile
- Bella nuova interfaccia DOM, che rende molto più piacevole lavorare con DOM. Sembra un codice Dart nativo.
Spero di aver risposto alle tue domande. Penso che l'unica domanda che conta sia: "La mia lingua mi aiuta a costruire app web complesse, ad alta fedeltà, a bassa latenza, modulari e moderne?" Lo stato finale di tutto ciò è semplicemente aiutare un numero maggiore di sviluppatori di app a fornire app di maggior successo sul Web moderno.