I agree with @timeu that GWT's SuperDevMode is really very fast. Please compile and deploy demo Angular2 project in Java8 (GWT) from here: http://lteconsulting.fr/angular2boot/ .
SuperDevMode is something what Dart doesn't have. At least recently. And all the conclusions come from the interview with Joshy Joseph (the primary technical lead for AdWords UI). Here is my Dart vs GWT comparison and for me Dart is still not matured enough. deploythoughts.blogspot.com/2016/04/the-new-adwor…
It's like reinvent the wheel.
Now they want to improve Dart and add things as following:
Some of the things mentioned above could have been added recently, so this is the status from April.
So I would rather think that Dart is slow and my choice if about Angular2 would be TypeScript, not Dart. But I can choose also Java.
So I don't agree with your conclusions regarding GWT. It works well out of the box. Important thing is to use the latest version 2.8. Btw. today has been released 2.8RC1 and the final release is planned within 2 weeks. It's actively developed and new features are on the way. GWT 3 (J2CL) is now closer
I agree with @timeu and I'm not going to repeat his words.
If about Kotlin, yes it's interesting. But when I considered KotlinJS, the problem was with libs, frameworks and tooling. Another option would be ScalaJS where you can find more ready to use libs. Maybe we need more time for Kotlin. If about GWT the landscape is really huge and Java 8 is powerful enough. What more we have Javaslang and you can find support for GWT which is being developed: github.com/javaslang/javaslang/tree/master/javasl… .
So complaining on GWT is rather about the past. There were the bad old days, but now it's being actively developed.
Same Conclusion ! I would like to know what do you think for backend ? still using dart ?
Hi, great article!
How would you recommend to approach internationalisation in an angular 2 dart application? I'm building a web application that needs to support multiple languages.
That has been our experience with Angular2.dart as well. Welcome! We are excited for it to get even better!
Very good read and welcome to the Dart world! :)
One thing I cannot stress enough about Dart is it's super helpful guys on it's Slack channels.
I've been looking at Angular 2 Dart as well for the past couple months and the experience was very similar to yours - feeling like a Rock Star. An interesting thing I noticed was tiny size of the built JS files of my project. Generally speaking, dart2js can produce large files, especiall if mirroring is used but this does seem to be the case, the compiled application was smaller than the dependencies of the TS version. I was quickly won over!
I've re-visited GWT for a bit and it was as clunky and slow as always and it seems like it's hardly maintained and used by a very small number of people.
That's not really correct. GWT 2.8 supports Java8 syntax that means you can leverage lambdas which make async code even more concise than the ES6 version. Furthermore SuperDevMode is really very fast. It's also not true that it is only used by few people and not maintained (check the github logs: https://github.com/gwtproject/gwt/commits/master, most commits are from Google Members but also contribution from the community). Also GWT is used for Google Inbox, Google Spreadsheet and used to write business code once in java and use it in iOS, Android and the Web. GWT 2.8 supports a brand new JsInterop (zero cost abstraction) that currently even easier to use than the Dart's JsInterop. Google is also working on GWT 3.0 which will be a pure Java to ES6 transpiler and reduce the compiler complexity a lot. There is also work done on leveraging Typescripts type definitions for various JS libraries to automatically create JsInterop Java interfaces to be used from GWT.
If you are looking for a corporate ready, serious framework, I would recommend Ember.js also. With ES6, and with ember-cli, it is a real a game changer and solid as rock. And it is already a proven solution for serious frontend apps.
nn
How things working out with AngularDart for you? I am in same situation as you OP but it is 2017.