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.
I took the advice of a
friend of mine and
steered clear of the
'normal' movie theaters
and went a little out of
the way to go to a DLP
movie theater. The
experience of comparing a
regular movie theater to
a DLP movie theater is
like comparing standard
def analog TV with a
1080i HDTV si
From Application
Virtualization to Xen, a
round-up of the
virtualization themes &
topics being discussed in
NYC June 23-24, 2008 by
the world-class speaker
faculty at the 3rd
International
Virtualization Conference
& Expo being held by
SYS-CON Events in The
Roosevelt Hotel, in
midtown
Verizon Wireless is
snubbing Google's
Linux-based Android
initiative to go with the
LiMo Foundation's mobile
Linux spec for its next
wave of mobile phones
expected next year. Along
with Verizon, Mozilla
signed up - giving the
consortium its first
major open source ISV -
and a key one f
Adaptec unveiled a new
family of entry-level
Unified Serial RAID
controllers. The new
low-profile Series 2 RAID
controllers, built on the
same Adaptec dual core
RAID-on-Chip (ROC)
architecture used in its
successful Series 5 RAID
controllers, provide
significant performance
enhancement
Sun's mule train has
finally pulled into
Indiana after three years
on the road. Indiana is
the Linux-friendly
Fedora-like OpenSolaris
project meant to move the
Solaris-shy Linux
community off Linux and
on to Solaris tempted by
Solaris widgetry like the
highly scalable,
rollback-easy, 1
Curl announced it has
released the availability
of an Ubuntu Installer
for the Curl Rich
Internet Application
(RIA) platform. Curl is a
Rich Internet Application
platform that competes
with Adobe AIR/Flex,
Silverlight, and Ajax.
Curl has been shipping
with Linux support for
RedHat 9, S
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: