J'essaye de comprendre lequel des deux utiliser, ayant quatre critères principaux
Quelles sont les principales différences entre les deux technologies?
Les deux semblent avoir des cas d'utilisation similaires et la même communauté de développeurs potentiels
Est-ce que GWT va être remplacé par Dart? Des signes suggérant cela?
Ou est-ce que je manque quelque chose et ce sont des concepts entièrement différents?
Je pense que l'objectif principal de Dart n'est pas de remplacer les compilateurs sources par du JavaScript comme GWT, mais de remplacer JavaScript lui-même. Il doit le faire pour d'énormes bases de code maintenables, pour de meilleures performances, et pour un tas d'autres raisons, je suppose.
Il est plus fortement typé et a emprunté de nombreux concepts à Java et à d'autres langages.
En ce qui concerne la prédiction de l'avenir, vous pourrez peut-être voir comment Dart se comporte par rapport à JavaScript sur Google Trends.
Je pense que je l'ai trouvé: (aurait dû lire Dart's FAQ d'abord, au lieu de googler "GWT vs Dart")
De: http://www.dartlang.org/support/faq.html#future-for-GWT
Q. Quel est l'avenir de GWT?
Bruce Johnson a publié sur le blog GWT (avec d'autres commentaires sur Plus): "Dart et GWT partagent tous deux l'objectif de permettre la programmation Web structurée. En fait, bon nombre des mêmes ingénieurs qui vous ont amené GWT travaillent sur Dart. Nous considérons Dart comme une évolution ambitieuse de la mission de GWT visant à améliorer les applications Web pour les utilisateurs finaux, et nous sommes optimistes quant à son potentiel. Alors que Dart évolue et devient prêt pour les heures de grande écoute, nous prévoyons de travailler en étroite collaboration avec la communauté des développeurs de GWT pour explorer Dart. "
"Pendant ce temps, soyez assuré que GWT continuera d'être un moyen productif et fiable de créer les applications Web les plus ambitieuses, et même des jeux comme Angry Birds. Les projets clés de Google s'appuient chaque jour sur GWT, et nous prévoyons de continuer à nous améliorer (et à ouvrir -sourcing) GWT en fonction de leurs besoins réels. "
Dart existe principalement pour résoudre deux problèmes
De cette façon, il résout certains des mêmes problèmes que GWT (combler le fossé entre le client et le serveur) et certains des problèmes résolus par - CoffeeScript (un langage moderne adapté au développement à grande échelle).
J'espère que Dart fera un meilleur travail pour combler le fossé client/serveur que GWT car il a été conçu dès le début pour être compilé en JavaScript, résolvant ainsi le problème principal avec GWT-RPC (c'est-à-dire que GWT-RPC ne peut sérialiser qu'un petit sous-ensemble de Java , Dart n'a pas ce problème).
Que ce soit meilleur que CoffeScript est une discussion différente, mais déjà maintenant, ses capacités de débogage améliorées (c'est-à-dire l'exécuter directement dans Chrome) se révèlent un grand plus pour le développement d'applications Web à grande échelle (comme le fait GWT avec son mode de développement).
J'espère que Dart fera un meilleur travail pour combler le fossé client/serveur que GWT car il a été conçu dès le début pour être compilé en JavaScript, résolvant ainsi le problème principal avec GWT-RPC (c'est-à-dire que GWT-RPC ne peut sérialiser qu'un petit sous-ensemble de Java , Dart n'a pas ce problème).
Jamais vu ou rencontré ce problème. Vous pouvez sérialiser facilement tous les types et la plupart des structures de données dans Java.util. *. Que voulez-vous ou avez-vous besoin de plus.