Общо показвания

март 03, 2014

GWT in Dart

I had no idea that this is even existing, but...!

Behold: http://dartwebtoolkit.com/

Okay, enough pathos. The thing is I always wanted to use GWT for a project (or several ones), but my knowledge of Java is about a book long and one that is for the first year of CS bachelor degree. And the book was a bad one!

It is understandable that I wanted to try GWT, after all it provided type system, safety, performance, developer productivity and is backed up by the best web app producing company out there. But this was not incentive enough for me to learn Java. Besides HTML and Java do not mix that well despite what you might have heard.

GTW was partially ported to Python and I have played around with that version of it, however never got to a working large scale application, mostly it was toy projects, jut to get a taste of the tool. As you can imagine the tooling around Python is not as good as the one around Java.

That and other factors led me to Closure tools.  After all it was used to build the flagman application for Google. t is indeed a great tool and anyone stating otherwise is simply ignorant. This is not the place to enumerate the benefits and advantages one gets with the project components. However they still lack something I find to be important for a productive developer: good tooling and IDE integration. There are several projects out there, some free and some at a steep price, but none of them solves the problem (and to be frank the premium ones are a rip off and worse than the free alternatives).

And then came Dart. If you have not watched one of the tens of videos introducing the language and the IDE go and do it know. You have no real reason to not do it, especially now that youtube supports playing the videos at twice the speed without loss of audio quality and without higher pitch of the voices. 30 or so minutes worth it!

Unfortunately Dart did not came with a sophisticated bunch of elements ready to be used in a large scale application. It came with Web UI, which was then deprecated and inherited by Polymer, which is powerful and new and cool, but far from ready for production IMO (it lags behind the JS implementation and has many bugs).

Little did I know that someone somewhere was thinking about it and working hard to implement the GWT set of components in Dart! It was just today that I have learned about the effort and the demo applications look great! Go on and take a look.

To sum it up - now you have powerful set of web tool-kit coupled with easy to learn yet robust optionally typed language with excellent IDE support.  If you are trying to build an application with lots of widgets that are more typical for the desktop application look and in the same time learn a new awesome language look no further!