2 ms·
Several paragraphs in the article read like they were written by a 2nd grader: "Conversely, Adobe AIR and Silverlight allow Web-style applications to run on th
by stephen 16y ago
Several paragraphs in the article read like they were written by a 2nd grader:
"Conversely, Adobe AIR and Silverlight allow Web-style applications to run on the desktop. Android, Adobe AIR, Google Chrome, Safari, and iPhone all use WebKit for rendering. One problem with GWT is that it does not allow you to write applications that run as desktop applications (even though GWT's development toolset for rendering is based on WebKit)."
And:
"When you're ready to deploy your application to the Web, you need to be a bit more careful about what library you include. It is common to use JavaScript Object Notation (JSON)-RPC services from a Pyjamas application running in the browser."
I'd give a blog post a pass, but this is a web property that I assume has an editor and pays authors for their submissions.
Also, pyjamas confuses me because two of GWT's rationales for existence are:
1. Using static analysis of your code to heavily optimize the resulting Javascript.
2. Using static language tools (Eclipse, etc.) to maintain order in large codebases
For 1), at Java->Javascript compile time, GWT will inline code, prune dead code, make calls un-polymorphic, and other fancy optimizations driven by the static typing. The goal is to make your Javascript as fast, or likely faster, than it'd be if written by hand.
Similar optimizations can be done these days at runtime by good VMs, e.g. the JVM and V8 (probably?), but the point with GWT is that crappy browsers (IE6-8) don't optimize at runtime, so GWT helps them out and does it at compile time.
For 2), whether or not you buy the assertion that IDEs/static typing make larger codebases easier to maintain, that is nonetheless the GWT team's assertion and something people using GWT generally agree with.
So, if you forgo static typing, and so give up static analysis, and a static tool chain/IDE, why are you not just using Javascript itself?
(Edit: formatting.)