What is your experience with GWT?

Do you find the Google Web Toolkit a useful project? Are there any licensing issues?

+4
source share
6 answers

GWT is excellent because it handles many problems with another browser, which, if you are not familiar with them, can be quite complex. It also makes it easier to create a GUI in a more programmatic way, which is also a big plus for a non-web POV designer. Take a look at the GWT Showcase (which provides live code examples) for an idea of ​​a GUI that you can easily use (and extend). Another nice feature is that you can easily internationalize your application (read this article for one way to do this). Also, when Google compiles it, it optimizes the code, which is a plus. Many other libraries also easily add functionality.

Basically you do everything you could do with HTML + JavaScript (Steve Reed's example shows how to use JavaScript in Java). You can even port your JavaScript library to Java and use them like any Java class.

Overall, Google did a pretty good job of this (it works great in Eclipse and is documented). However, this is the first web framework (?) That I take seriously, so I think it's pretty good and can be biased. Something to note: the Hosted Mode browser is essentially Internet Explorer, so you need to compile and view it in another browser.

+6
source

We use it on Google, and although I was afraid of a huge process (by calculating the transitive closure of all Java classes used by code and then translating it into JavaScript), it really was a smooth transition to using it for UI programming. All you need to learn is a few GWT-specific configurations (serialization policies can be rude, you have to be careful about dependencies, etc.), and then you are turned off and running without taking into account GWT and its architecture.

I had no experience with JavaScript when we started the project, and I still have no experience with JavaScript - that’s good. I never had to test JavaScript to debug my program, in part because of the availability of debugging tools. You can use the host mode, which will skip the Java β†’ JavaScript translation and allow you to stay in Java in, say, an eclipse, and go through it, as you would in a JavaScript browser.

Finally, since testing is absolutely what your big web application will do or break, Selenium works fantastically with GWT. Selenium is a functional GUI testing platform and does not replace unit tests, but it is a really nice end-to-end test that complements your GwtTestCases.

+3
source

I used it in research and found it to be a promising technology. As for licensing, this is Apache 2.0, so this should not be a problem for you:

http://code.google.com/webtoolkit/terms.html

+1
source

I really really don't like working with Javascript. (Indeed!) In addition, I have a background that includes user interface programming with Java AWT and Swing. Therefore, I found the layout model very intuitive. I also enjoyed my vacation in Eclipse with its autocomplete and debugger. The generated code worked with the same cross browser.

I used it inside a Rails application, so I just stuck the resulting .js file in public/javascripts , demanded it in my layout and deployed as usual.

Real Javascript programmers usually hate this. The Java layout model is incredibly flexible, but hard to get the first time (second time, third time ...), you see it. They are also annoyed at the compilation stage.

+1
source

If you want to feel the GWT community, I suggest you check out the Google Group for GWT . There are posts pointing to pages that try to show who is using the toolbox, the problems people are facing (and the solutions!).

I use GWT in my company and we have fantastic success. We have a strict requirement for creating a web application, and we could not do what we did without it (and still have the same performance (thanks to the IDE), function speed, etc ...)

+1
source

I use GWT in my current job and love it, because now I can do with Java what the best javascript ninjas can do.

Delayed binding, their optimization of bootstrap and caching, as well as image packages, for example, show how serious they are for getting great performance for a little extra development effort.

One caveat is to be careful with the means by which you incorporate this technology into everything that you develop. We are dealing with an old monolithic code base that creates huge HTML documents using hodge-podge built-in javascript, css, etc. I decided to introduce some GWT user interface by β€œpublishing” the GWT functions in a window:

 public native void publishStuff() /*-{ $wnd.createGwtUI = @com.acme.foo.MyGwtUI::create(); }-*/; 

These functions read the configuration from the parent HTML document.

The stability of this solution is seriously undermined by the quirks and shortcomings of the basic structure of the document, so some people got the first idea of ​​how the cross-browser GWT really works.

+1
source

All Articles