Conosco un po 'di Angular.js, ma ora voglio insegnarmi Dart e Angular.dart. Sono un po 'curioso di sapere quali siano le differenze tra i due. Il tutorial di Angular.dart specifically says it won't compare the two. Qualcuno che ha usato entrambi ha una prospettiva su quali sono le differenze?Differenze tra Angular.js e Angular.dart?
risposta
Aggiornamento # 2 (agosto '16) versione un dardo di angolare è ora gestito dal team di Dart su Github: dart/angular2 on github
Aggiornamento: il progetto AngularDart viene messo fuori servizio ed è stato sostituito da Angular2. Angular2 è l'iterazione più recente di Angular e funziona in Dart.
La risposta originale di seguito confronta AngularDart e AngularJS 1.x.
AngularDart e AngularJS sono entrambi gestiti dal team Angular. Abbiamo preso molte informazioni dal lato JS e l'abbiamo applicato a Dart. Abbiamo anche preso molto codice e l'abbiamo portato direttamente al mondo di Dart.
A livello tecnico, nel nucleo angolare:
L'espressione lingua è compatibile tra le due versioni. Il parser di AngularDart è iniziato come una porta diretta da JS, ma si è evoluto da solo. Una grande differenza è che il parser Dart supporta più backend, incluso un generatore di codice Dart.
Il sistema DI è diverso. In Dart è basato sulla classe, dove in Javascript è basato su simboli.
Il compilatore è stato completamente riscritto nella versione di Dart. Ciò significa che le direttive si comportano diversamente e ora c'è una distinzione tra "direttive strutturali" che modificano il DOM, "direttive decorative" e componenti.
ng-transclude ha "fuso nel browser", sostituito dal DOM ombra standard.
controllori direttiva sono state fuse in componenti
direttive in AngularDart sono dichiarate con una classe annotata. le funzioni di collegamento/compilazione sono sostituite con una funzione applicabile
In AngularDart, l'ambito viene digerito automaticamente attraverso le zone Dart, eliminando la necessità dall'ambito. $ apply.
AngularDart ha un concetto di mappe di attributi che non è ancora tornato ad AngularJS. Ciò significa che le direttive dovrebbero necessitare di molti meno spazi. $ Orologi o anche una dipendenza dall'ambito.
Ci possono essere altre differenze, ma questa è una buona lista per iniziare.
Qualsiasi idea quando sarà in uno stato utilizzabile? Anche alcune funzioni di base sono mancanti in questo momento sembra e sono così entusiasta di iniziare a usare Dart :( –
@SalmanPK AngularDart è utilizzabile. ? –
[ngModello] (https://github.com/angular/angular.dart/issues/131) e [ngForm] (https://github.com/angular/angular.dart/issues/113) –
Quindi la prima differenza è abbastanza ovvia: AngularJS
è scritto in JavaScript mentre Angular.dart
è scritto in dardo.
Mentre Angular.dart
segue i principi di base di AngularJS
, sembra essere un po 'un campo di gioco per le nuove funzionalità da evolvere. Immagino che il team principale tenga tutti gli insegnamenti di AngularJS e cerchi di implementare le cose solo leggermente meglio per la versione Angular.dart
. Attualmente sembra che un pò di cose siano state implementate per la prima volta nella versione dardo di Angular prima che abbiano ottenuto il backport a AngularJS
. Ad esempio, hanno appena aggiunto una versione più leggera di ng-repeat
che alla fine dovrebbe arrivare a AngularJS
.
Anche il team Angular ha recentemente condiviso alcune informazioni su ciò che è previsto per Angular 2.0. Scommetto che la maggior parte di queste cose atterreranno prima in Angular.dart
prima di atterrare nel AngularJS
.
Questa affermazione da un ** molto ** alto punto di vista. Sono consapevole che questa domanda potrebbe non essere perfetta per SO, ma non c'è molta documentazione disponibile per Angular.dart. Quindi speravo in informazioni un po 'più sostanziali come - dove differisce il markup (questo non dovrebbe dipendere molto dalla sintassi del linguaggio (almeno dei costrutti più comuni per ottenere l'idea) - quali costrutti di markup sono disponibili nell'uno ma non nell'altro IMHO che entrambi i prodotti sono correlati e sviluppati da due gruppi che parlano tra loro è un po 'sottile –
Per eseguire il backup del punto su' playground '- http://stackoverflow.com/a/21055757/3966682 – d4nyll
Aggiornamento 01/2018
Vedi anche What's the difference between Angular 2 TS and Angular 2 Dart?
Aggiornamento 08/2016
angolare 2 per JS e Dart sono ora progetti indipendenti e sarà divergere in una certa misura.
Ad esempio, lo NgModule
introdotto in TS RC.5 probabilmente non verrà inserito in Dart e probabilmente il modulo router non verrà convertito direttamente. Queste sono le modifiche che erano necessarie in TS per il caricamento lazy. Dart ha una storia di caricamento pigro più semplice e non ha bisogno di molte delle modifiche introdotte in Angular2 per TS.
Aggiornamento
Con angolare 2 ci sono (quasi) senza differenze più perché Angular.dart e Angular.js sono generati automaticamente dalla stessa fonte dattiloscritto. http://techcrunch.com/2015/03/05/microsoft-and-google-collaborate-on-typescript-hell-has-not-frozen-over-yet/
originale
Analog of ngTransclude in Angular.Dart
Angular.dart utilizza shadowDom mentre AngularJs non lo fa.
AngularJs utilizza invece ngTransclude.What is the difference between ng-app and data-ng-app?
Angular.dart sembra non supportare altri prefissi come quelli discussi nella domanda collegata.Angular.dart non ha equivalenti a
ng-init
. (vedere anche GitHub issue - port: ng-init)Angolare.dardo ha alcuna direttiva
ng-controller
(port: ngController)
invece@NgController(selector:'[foo-controller]', publishAs:'foo')
viene utilizzatoAngular.dart non supporta
ng-repeat
con mappe (ng-repeat with a Map not working)Angular.dart non ha
restrict
Has Angular.dart directive an equivalent to AngularJS's `restrict`Misko Hevery il creatore di AngularJS e membro del team di AngularDart ha risposto a una domanda simile here
questo articolo sono elencate alcune differenze: ANGULARDART FOR ANGULARJS DEVELOPERS. INTRODUCTION TO THE BEST ANGULAR YET.
- 1. Le differenze reali (o nascoste) tra il bootstrap di Twitter e Angular.js
- 2. Differenze tra NoClassDefFoundError e ClassNotFoundException?
- 3. Differenze tra funtori e endofuntori
- 4. Differenze tra express.Router e app.get?
- 5. Differenze tra VB.NET e VB
- 6. Differenze tra .ContextMenu e .ContextMenuStrip
- 7. Differenze tra Proc e Lambda
- 8. Differenze tra `input` e` raw_input`
- 9. Differenze tra App.Config e Web.Config?
- 10. Differenze tra Log e Logger?
- 11. differenze tra NSArray e CCArray
- 12. Differenze tra Coroutine e `goto`?
- 13. Differenze tra utf8 e latin1
- 14. Differenze tra DB2 e Oracle
- 15. Differenze tra Camel e BPEL
- 16. Differenze tra MSYS2 e Cygwin
- 17. Differenze tra org.apache.log4j.RollingFileAppender e org.apache.log4j.rolling.RollingFileAppender
- 18. Differenze tra OTL e SOCI
- 19. Differenze tra Agda e Idris
- 20. Differenze tra AVPlayer e MPMoviePlayerController
- 21. Differenze tra Boost.Coroutine e Boost.Coroutine2
- 22. Differenze tra Rijndael e AES
- 23. differenze tra char * e stringa
- 24. Differenze tra ActionExecutingContext e HttpActionContext
- 25. Differenze tra testoMultiLine e textLongMessage
- 26. Differenze tra BaseHttpServer e wsgiref.simple_server
- 27. Differenze tra RxJava1 e RxJava2
- 28. Differenze tra `.EditingDidEnd` e` .EditingDidEndOnExit`
- 29. Differenze tra gevent e tornado
- 30. Differenze tra MPI_Scatter e MPI_Bcast
lingue diverse – charlietfl
Sì ... e uno è più vecchio e più maturo degli altri due, ma stavo pensando alle differenze meno ovvie. – CorayThan