Contenu connexe
Plus de Harbinger Systems - HRTech Builder of Choice
Plus de Harbinger Systems - HRTech Builder of Choice (20)
Comparing Adobe Flex and JavaScript
- 1. HSTW - 106
Comparing RIA Technologies
Adobe Flex vs. JavaScript
A Harbinger Systems White Paper
© 2009, Harbinger Systems, All Rights Reserved
- 2. Harbinger Systems
Your partner in technology innovation
About Harbinger Systems: Harbinger Systems (www.harbinger-systems.com) is a
leading provider of software engineering services to some of the world's best product
companies.
This white paper is part of Harbinger’s Web 2.0 practice. Harbinger’s Web 2.0
practice provides software development and testing services for the rich user
interface and collaboration needs of enterprise businesses and social web
communities. Visit our Web 2.0 Practice page to learn more.
Visit our website to download or request our white papers on leading edge
technologies and trends.
Contents
Introduction 3
A Word on the Comparison Attributes 3
Comparison 4
So Which Technology Should I Choose? 5
The Next Generation Clients 6
Page 2 of 6
© 2009, Harbinger Systems, All Rights Reserved
- 3. Introduction
JavaScript and Adobe Flex are two credible technologies available today for web-based client
development. In this paper, we compare their viability as options for building the rich clients that are
needed for today’s complex web-based applications. JavaScript, along with the AJAX technology, is a
dominant force in the web applications market. On the other hand, Adobe Flex capitalizes on the ubiquity
of Flash support on most browsers. We will see what are the relative strengths and weaknesses of each
technology option for client-side development.
Harbinger Systems is a leading provider of software engineering services to some of the world’s best
product companies. Harbinger’s Web 2.0 practice provides software development and testing services for
the rich user interface and collaboration needs of enterprise businesses and social web communities.
This comparison is based on Harbinger’s research and its experience in developing rich internet
applications for software vendors and product companies around the world.
A Word on the Comparison Attributes
Web 2.0 is an evolutionary phase of the web, and with many investments already made in the gigantic
web infrastructure, the new age technologies for developing RIA have to be well rooted in the traditional
methods of web development. At the same time, the richness and complexity desired of the new web
applications need more than incremental improvements in technology. The comparison attributes below
reflect this inherent duality.
Following are the broad categories that the comparison attributes fall in:
Support from existing technology infrastructure
As mentioned above, to become mainstream technologies, it is critical for these RIA paradigms to blend
their path-breaking changes with incremental improvements that are well supported by existing
infrastructure like browsers, operating systems and internet search paradigms.
UI, richness of interactivity and client-side complexity management
Needless to say, being on the client-side, these technologies need to model user interactions extremely
well. Features such as animation, layout management, consistency across browsers are critical to a
successful web application, and these technologies need to stand up to the challenge.
Desktop and non-web infrastructure support
The emphasis on client side technologies alluded to earlier in this paper is not limited to web-based
clients. There is a trend towards using independent desktop applications for performing repetitive tasks,
heavy-duty activities or to simply have a dedicated window for alerts etc. Similarly, support for mobile
devices is also an important aspect in our comparison.
Development Support and performance attributes
Tradeoffs such as ones between size and speed or design elegance and performance are critical to the
success of these technologies. We will examine these technologies from the standpoint of performance
and development attributes
Page 3 of 6
© 2009, Harbinger Systems, All Rights Reserved
- 4. Comparison
Figure 1 shows the comparison of Flex and JavaScript along the above important factors.
Figure 1: Comparison of Adobe Flex and JavaScript
Being new to the application development and delivery game, Adobe Flex has important drawbacks with
existing technologies and paradigms, like search engine optimization, HTML and browser back button
handling. Ironically though, Flash player browser plug-in’s ubiquity stands it in good stead with browser
and OS support. In fact, a web application built in Flex is more compatible with multiple browsers and
Page 4 of 6
© 2009, Harbinger Systems, All Rights Reserved
- 5. operating systems than JavaScript! An important caveat is that (as of this writing) some new browsers like
Safari for the Apple iPhone do not support installation of the Flash player plug-in, putting Flex at a
significant disadvantage against JavaScript.
Flex does very well in the feature richness and performance parameters. Its support for media, sockets,
webcam, and most importantly desktop (through its companion technology, Adobe Integrated Runtime or
AIR), makes Flex a good choice where truly new-age features are required. Flex also scores well on
performance parameters like binary size and speed, which bodes well for a technology that has great UI
support like animation, superior graphics and user interaction elements.
Finally, JavaScript scores very well in development attributes like IDE and debugging, availability of skills
and fast development. Adobe’s commitment to Flex will be an important aspect in making Flex as
attractive to developers, but for now, JavaScript has a leg up.
So Which Technology Should I Choose?
JavaScript and Adobe Flex have differing strengths due to their technological heritage. The following
diagram (figure 2) summarizes the results.
Figure 2: Adobe Flex and JavaScript recommendation
We have plotted applications and concepts on the Y-axis, and the X-axis is the degree of suitability of
each of these technologies. JavaScript has traditionally worked well for text and HTML heavy websites
with complex text layouts and need for search engine optimization. If your web application or product is
primarily content-driven or needs to transition between content and functionality seamlessly, JavaScript
could be your best bet. Note that while JavaScript is SEO-friendlier than Adobe Flex, it takes effort and
some smart coding to ensure that your text content is searchable and linkable.
Adobe Flex gives you powerful features not just limited to user interface and looks. For example, if you
envision access to native devices such as webcam and microphone or the use of a desktop application in
your product roadmap, Flex is a good option. Flex is also more compatible across platforms and
Page 5 of 6
© 2009, Harbinger Systems, All Rights Reserved
- 6. browsers. These strengths actually make it a great contender for enterprise applications and internal
systems, which need powerful features and complex user interactions like reporting. They also, many
times, need seamless desktop access for heavy-duty admin use and are also not overly concerned with
SEO.
The Next Generation Clients
The web has primarily been a means of delivering documents and content, which gave it simple, page-
based navigation architecture. For a while, the focus was on server-side technologies to deliver data,
content and even business logic. This is the time when multiple server-side scripting technologies came
out, including ASP/.NET, Java/J2EE, PHP, Cold Fusion and many more. With increasing sophistication of
web-based applications, the clock has turned around and the focus is now firmly back on client-side
technologies.
This time around though, the users’ expectations are much higher. Web 2.0 technologies have gone
through multiple iterations and improvements to meet these expectations. As a leader in interactivity,
Harbinger works with companies to decide the best option for them and develop great looking clients of
the future.
Learn More: If you would like to get a more detailed comparison between leading JavaScript
technologies – Ext JS, JQuery, Dojo, Prototype and YUI – read the Harbinger Systems paper, HSTW-
102. Visit
http://www.harbinger-systems.com/tech-articles/software-dev-company-info-form.htm?code=HSTW102 to
request the paper.
Page 6 of 6
© 2009, Harbinger Systems, All Rights Reserved