GWT vs Flex vs?

Limbic System picture Limbic System · Jan 8, 2009 · Viewed 17.6k times · Source

My company is trying to migrate away from a .NET application to something that is purely web-based, and very "ajaxy". The original .NET app is fairly interactive, roughly equivalent to Google Maps as far as user interaction is concerned (zoom, pan, annotate features on a vector map).

Our .NET developer is really taken with Flex2. I'll admit to having a pretty strong Java bias. I also have about a year's worth of experience with GWT, and can get things done pretty quickly with it. Our codebase is mostly J2EE, so GWT seems a natural fit to me. I have zero experience with Flex, so I really can't make a recommendation for or against it

Our primary interests in selecting a framework are the following:

  • futureproof
  • works on all major browsers
  • fast & responsive user experience
  • code should be unit testable
  • code must be maintainable
  • speed & ease of development
  • supports vector graphics of some sort (SVG a plus)

Care to weigh in on the pros & cons of these two technologies, or even recommend a third option?

Answer

rustyshelf picture rustyshelf · Jan 9, 2009

I'm only mildly familiar with Flex, but have worked with GWT for many years. We had to make a very similar decision some years ago (Flash vs GWT), but for different reasons. In the end we saw the many advantages of GWT over Flash (Many of which apply to Flex):

  • Not all our customers have flash, penetration numbers from Adobe are useless, you need your own (which we have) to see what your customers actually have. In corporate and education markets the penetration is actually far lower than the high 90s that Adobe quotes.

  • GWT is truly cross-browser and platform compatible (Linux, Mac, Windows, Android, iPhone, etc, etc) whereas flash will never be. You may not care about that, but we did.

  • Flex is proprietry Adobe Technology, whereas GWT is fully open source and customisable

  • GWT integrates with the DOM, and everything else on your page far easier than flash and Flex do.

  • GWT is coded in Java, and we all know Java extremely well

To Address your specific points:

*  futureproof

Nothing is truly future proof, but I feel that both GWT and Flex would be fairly future proof. Maybe GWT a tiny bit more so because it's open source.

* works on all major browsers

GWT works in Firefox(and all gecko browser), Safari (and all Webkit browsers), IE and Opera. Flex works in all browsers, but only if Flash is supported, so I would say GWT comes out on top there.

* fast & responsive user experience

On platforms where it's supported, Flex is going to kill GWT dead for user experience. You just can't compete with flash when it comes to smoothness and slickness.

* code should be unit testable

Both are easily unit testable

* code must be maintainable

When coded well both are maintainable

* speed & ease of development

As long as your familiar with them, I'd say it's much of a muchness.

* supports vector graphics of some sort (SVG a plus)

I can't speak for Flex, but GWT supports vector graphics via SVG, through third-party libraries.