The defining characteristic of any RIA is that it has a stateful client that is (or should be) platform and browser independent. With the advent of new RIA platforms like Flex, GWT, and OpenLaszlo, developers now have all the reach of a traditional thin-client web application with many of the useful characteristics of thick-client applications, such as the ability to maintain state on the client. Is there a clear winner of the three, one toolkit that developers should focus on at the expense of the others? I don’t really think so. They each have their strengths and weaknesses.
Here I thought I would dedicate a little web space to throwing in my two cents about what I think those strengths and weaknesses are. Is there a clear winner of the three, one toolkit that developers should focus on at the expense of the others? I don’t really think so. Much of that decision is based on the requirements for your project. But Flex, GWT, and LZX are certainly not created equal for all tasks, and I hope to give you a sense of what tool is going to be the best choice for your project.
In grade school teacher style, I have scored these three frameworks based on my own appraisal of their utility in the area specified:
Flex Report Card:
Language Syntax: B
Development Process: C+ (B+ with purchase of the 400 dollar Flex Builder Eclipse plugin)
Widgets/Features/Power of Toolkit: A
Ease of Deployment: B
Server-Side Data Integration: B+
Client-Side Performance: A-
Platform Flexibility: B-
Notes:
Adobe Flex, in my opinion, is the most powerful of the three frameworks in terms of what you can accomplish visually with the least amount of work. Native drag and drop support for many widgets, CSS-type styling for components, and fine-tuned control over component behaviors give the developer the most tools to do wild and crazy stuff with their user interface.
The language syntax is based on XML and ActionScript, which coupled together provide an expressive means of composing a UI. MXML tags work well to nest components and easily create layouts that are human readable. In terms of client-side performance, Adobe Flex 2 stacks up pretty well, as version 9 of the Flash Player (required for Flex 2) offers some serious performance upgrades over previous versions. Flex is agnostic in where it retrieves server-side data and provides solid functionality for SOAP web services, REST web services, and Java/ColdFusion remote object functionality (though I’ve never personally used the remote object stuff).
In the negative column, Flex is (ironically) the least flexible of the frameworks in terms of platform, as it can only run in version 9 of the Flash Player (and it can be compiled for Adobe AIR, but that is a topic outside of this conversation). The good news is that according to Adobe, over 90% of the web community in most developed markets already have Flash Player 9 installed, and that number increases all the time. And unless you purchase the spendy Flex Builder Eclipse plugin, the Flex development cycle can be a chore, as Flex files must be compiled via a script. Also, the command line debugger is not very user friendly when compared to most modern IDE debuggers.
See next page for GWT Report Card and OpenLaszlo Report Card...
About Kevin Whinnery Kevin Whinnery, currently employed as a Systems Engineer at Lawson Software, is a Twin Cities based web developer. His official blog is at http://www.lightrailsystemsllc.com.
NN wrote: Yeah you are right GWT is poor man's Flex.
After using GWT on two projects I am done with creating UI using Java.
Best combo is Flex + ROR or Flex + Java (server side rules no question about that)
Otherwise Appcelerator sounds great for page level RIA.
Flex Wins wrote: Overall Flex has the upper hand - not only has Flex Builder's price dropped (250, and don't forget that you get what you pay for with the free alternatives, ya spoiled devs...), but it's not fair to say Flex is "less flexible" on platform. You're saying it's not flexible because it only runs on the Flash 9 "platform", yet when comparing GWT's platform compatibility, you switch the definition of "platform" to the web browser (I guess). Problem is, Flash/Flex runs on that same platform, and arguably runs BETTER because it doesn't care about the browser or the OS, unlike JavaScript/Ajax. Flex is running in the "Flash VM" so it obtains platform independence quite well with that in mind. GWT... might be "pretty good", but it's basically the poor man's Flex.
ISO said Friday that the appeals made by Brazil, India, South Africa and Venezuela protesting the standardization of Microsoft’s Office Open XML (OOXML) file format hadn’t gone anywhere – it was unclear whether any of them had any standing anyway – but since they “failed to g...
Red Hat CTO Brian Stevens, Citrix CTO Simon Crosby, Egenera CTO Pete Manca, Allen Stewart, Group Manager, Windows Virtualization at Microsoft, and Brian Duckering, Sr. Director of Products and Alliances at Symantec were the top industry executives who joined Jeremy Geelan in the 4th Fl...
Two of the biggest launches in Rich Internet Application history took place in 2007/2008 when Adobe launched AIR 1.0 in February '08 and Microsoft launched Silverlight (September '07). At the 6th International AJAXWorld RIA Conference & Expo in October SYS-CON Events is delighted to be...
Since its inception, XML has been criticized for the overhead it introduces into the enterprise infrastructure. Business data encoded in XML takes five to 10 times more bandwidth to transmit in the network and proportionally more disk space to store.
Vordel unveiled version 5.1 of its XML network infrastructure products, to accelerate, manage and protect XML applications. Vordel 5.1 addresses the need for lifecycle management of policy across the SOA. By combining the central management of SOA policies with distributed enforcement ...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice: