Introduction
Adobe’s Flash/Flex and vendor-independent Ajax are both used to design dynamic and interactive web applications. Both allow for interface animation and are platform independent meaning content will appear the same across platforms. There are many similarities and Flash/Flex is often used as a partial substitution for Ajax interface technologies. However, there are significant differences as well. For example, Flash is an animation format software that allows for the quick download of animation files in a resizable format that lets files be downloaded over a regular modem connection. Flash produces increased interactivity by encoding information in smaller, more easily downloadable files.
It is also a set of technologies aimed at creating Rich Internet Applications (RIAs). It is a product developed by Macromedia, whereas Ajax is more of a methodology to produce RIAs. Ajax uses the strategic combination of DHTML or XHTML (respectively, Dynamic Hypertext Language or Extensible Hypertext Language), XML (Extensible Markup Language), CSS (Cascading Style Sheets), and DOM (Direct Object Model) with XMLHttpRequest and JavaScript to create more responsive and interactive web applications. Ajax functions as a layer of programming that facilitates a behind-the-scenes communication between the browser and the server.
This article will discuss Ajax and Flash/Flex technology as they compete in making RIAs. The two are similar and can perform similar functions. However, there are certain advantages and disadvantages to both.
Background
Flash is the catch-all term for the Adobe Flash Player and the Adobe Flash Professional Multi-Media authoring program which helps create content for the Adobe Engagement Platform. Macromedia developed it in 1996. Subsequently, Macromedia was acquired by Adobe in a deal finalized in 2006. Adobe Flash Professional functions as an IDE (Integrated Development Environment). IDE’s offer a set of programs, including a code editor, a debugger, a compiler and a program to create GUIs (graphical user interfaces). All of these run through a single user interface to make programming easier.
They are very popular for creating HTML applications and are therefore very important to web development and often help to automate tasks, making web programming and usability faster. Flash is a popular method for adding animation and interactivity to web sites. However, it is currently moving toward contributions toward developing RIAs (Rich Internet Applications). RIAs are web applications that function with the efficiency, consistency and security of desktop applications using the simplicity of a simple user interface, keeping other program functions on the application server away from the user. Adobe’s Flex technology was released by Macromedia in 2004 and directly responds to RIA development. Flex technology rivals Ajax by using workflow and programming models that programmers are more familiar with. Flex is the development framework for the Flash IDE.
Flex is precisely where Flash intersects with Ajax. Both aim towards creating RIAs. Flex works on the presentation level of an RIA. The term Ajax was coined in 1995 as an umbrella term for a set of technologies and methodologies used to produce rich Internet applications based on open standards. W3C published standards for XML, HTML, and CSS and these are the standards employed by Ajax to increase its application’s interoperability.
This also reiterates one of the main differences between Ajax and Flex. Ajax is amore democratic methodology, while Flex is a vendor specific product that requires purchase. Like Ajax, Flex uses an XML-based language, MXML, to create GUIs. MXML mirrors XHTML in Ajax. ActionScript reflects the function of JavaScript in Ajax. Finally, like Ajax, Flex technology requires that the client only load once and have access to multiple and complex interface interactions in real-time.
Uses
The differences between Ajax and Fletch is not merely a brand naming. There are hardwired differences as well. For example, Flex and Flash are delivered through Flash Player while Ajax is delivered through a browser. Flash Player requires a plug-in to browsers. A plug-in is a program that is easily installed to be used with a web browser. Plug-ins allow users to supplement web applications with other programs to perform specified functions. However, Ajax doesn’t require the downloading of applications, rather it accesses those web applications from the Web as they are requested. But some argue that Ajax requires more program writing and code. DHTML (dynamic HTML) applications are used differently according to the browser. Programming must be written to work around that.
Therefore, Ajax can sometimes be development heavy. Also, Ajax toolkits that abstract browser inconsistencies to address these problems often lack standards and are extremely large in file size, making them more difficult to work with. Flash platforms function as application platforms that are browser and platform independent. In Ajax applications, the browser is the platform. Some argue that browsers were not built for that, whereas Flash Player was specifically intended to be that kind of receptacle for client-side operations.
Points of Interest
The conflict between Flash and Ajax seems to stem from differences in approach towards achieving the same RIA goals. Adobe’s Flash and current Ajax products by IBM and Microsoft compete commercially in the IT marketplace. But more than just encouraging market competition, both of these technologies aim at improving user experience of the Web. Currently, Flash and Ajax are working together on some innovative web sites like Google Finance and Yahoo! Finance.
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

