Showing posts with label AJAX Frameworks Comparative Study. Show all posts
Showing posts with label AJAX Frameworks Comparative Study. Show all posts

Sep 29, 2009

AJAX Frameworks – Comparative Study

Introduction


AJAX frameworks can make software development easier. Ajax doesn't have to be that hard, and most of the Ajax frameworks are doing their best to make life easier for the busy developer. The hard part is selecting the right framework for the job at hand. There are lots of freely available frameworks/toolkits in the market for AJAX. This document presents five of the best tools; each one of those has its own benefits and drawbacks. The objective of this document is to evaluate and choose the best one.

Comparison Methodology

The study has been done based on the below criteria:

  • Installation aspects (Packaging, setup, maintenance)
  • Development aspects
  • Quality aspects

Frameworks compared

  • Prototype with Scrip.aculo.us
  • DOJO Toolkit
  • YUI (Yahoo! User Interface)
  • Direct web Remoting (DWR)
  • GWT (Google Web Toolkit)

Overview of Frameworks / Toolkit compared


Prototype with Scrip.aculo.us
Prototype is a JavaScript framework that aims to ease development of dynamic web applications. Featuring a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around, Prototype is quickly becoming the code base of choice for web application developers everywhere.

Dojo Toolkit
Dojo toolkit is a modular open source JavaScript toolkit (or library), designed to ease the rapid development of JavaScript- or Ajax-based applications and web sites. Dojo is a major abstraction layer between normal DOM calls and Dojo calls. It provides an abstraction for every page widget in a manner that you would expect from a server-side language: making every page widget a type of component that goes into abstract container objects. You can use Dojo to write clean, efficient, reusable code

Despite the file size, however, its execution speed once downloaded is quite impressive, and it includes functionality ranging from AJAX to complex graphics capabilities. Dojo provided more features and widgets but customization was harder due to the number of files needing modifications

YUI (Yahoo! User Interface)
The Yahoo! User Interface (YUI) Library is a set of utilities and controls, written in JavaScript, for building richly interactive web applications using techniques such as DOM scripting, DHTML and AJAX. The YUI Library also includes several core CSS resources. All components in the YUI Library have been released as open source and are free for all uses. YUI provides a compressed version of JavaScript files ready for deployment.

Direct web Remoting (DWR)
DWR is a Java open source library which allows you to write Ajax web sites. It allows code in browser to use Java functions running on a web server just as if it was in the browser. DWR can dynamically generate JavaScript from a Java API. This is done at runtime rather than compile time, so we can use it to remote control many browsers. This makes it very easy to write things like chat applications, or anything particularly dynamic. DWR doesn’t provide the user’s interfaces that can be plugged within our web applications, which is an important drawback compared other frameworks.

Google Web Toolkit Features (GWT)
Google Web Toolkit, or GWT, is an open source Java framework that can auto-generate AJAX-enabled JavaScript code from Java byte code. In other words, if the code is in pure Java using Google API and "when you deploy your application to production, the GWT compiler translates your Java application to browser-compliant JavaScript and HTML," the JavaScript code produced will be AJAX enabled.

 

comparative-study1

Ajaxian.com 2006 Survey results

Ajaxian.com is a leading online resource for the AJAX community, operated by early adopters of the technology.

survey06-all-large

Recommendation Report


ajax

Conclusion


Prototype (because of its flexibility and clarity) and GWT (because it is support by Google) are the ones are most valuable. If you consider overall ease of development, Yahoo UI is good due to its well documented code and detailed tutorials on the Yahoo website. Dojo provides more features and HTML widgets than YUI and Prototype. However, Dojo's widget customization requires some effort. Although, the functionality of each tool is important, you have to take into account which one you estimate will fulfil your needs thinking about the future, because every tool of this kind is growing and making the difference every day. In the end, YUI stands out as the easiest to work with.

AJAX Frameworks – Comparative Study

Introduction


AJAX frameworks can make software development easier. Ajax doesn't have to be that hard, and most of the Ajax frameworks are doing their best to make life easier for the busy developer. The hard part is selecting the right framework for the job at hand. There are lots of freely available frameworks/toolkits in the market for AJAX. This document presents five of the best tools; each one of those has its own benefits and drawbacks. The objective of this document is to evaluate and choose the best one.

Comparison Methodology

The study has been done based on the below criteria:

  • Installation aspects (Packaging, setup, maintenance)
  • Development aspects
  • Quality aspects

Frameworks compared

  • Prototype with Scrip.aculo.us
  • DOJO Toolkit
  • YUI (Yahoo! User Interface)
  • Direct web Remoting (DWR)
  • GWT (Google Web Toolkit)

Overview of Frameworks / Toolkit compared


Prototype with Scrip.aculo.us
Prototype is a JavaScript framework that aims to ease development of dynamic web applications. Featuring a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around, Prototype is quickly becoming the code base of choice for web application developers everywhere.

Dojo Toolkit
Dojo toolkit is a modular open source JavaScript toolkit (or library), designed to ease the rapid development of JavaScript- or Ajax-based applications and web sites. Dojo is a major abstraction layer between normal DOM calls and Dojo calls. It provides an abstraction for every page widget in a manner that you would expect from a server-side language: making every page widget a type of component that goes into abstract container objects. You can use Dojo to write clean, efficient, reusable code

Despite the file size, however, its execution speed once downloaded is quite impressive, and it includes functionality ranging from AJAX to complex graphics capabilities. Dojo provided more features and widgets but customization was harder due to the number of files needing modifications

YUI (Yahoo! User Interface)
The Yahoo! User Interface (YUI) Library is a set of utilities and controls, written in JavaScript, for building richly interactive web applications using techniques such as DOM scripting, DHTML and AJAX. The YUI Library also includes several core CSS resources. All components in the YUI Library have been released as open source and are free for all uses. YUI provides a compressed version of JavaScript files ready for deployment.

Direct web Remoting (DWR)
DWR is a Java open source library which allows you to write Ajax web sites. It allows code in browser to use Java functions running on a web server just as if it was in the browser. DWR can dynamically generate JavaScript from a Java API. This is done at runtime rather than compile time, so we can use it to remote control many browsers. This makes it very easy to write things like chat applications, or anything particularly dynamic. DWR doesn’t provide the user’s interfaces that can be plugged within our web applications, which is an important drawback compared other frameworks.

Google Web Toolkit Features (GWT)
Google Web Toolkit, or GWT, is an open source Java framework that can auto-generate AJAX-enabled JavaScript code from Java byte code. In other words, if the code is in pure Java using Google API and "when you deploy your application to production, the GWT compiler translates your Java application to browser-compliant JavaScript and HTML," the JavaScript code produced will be AJAX enabled.

 

comparative-study1

Ajaxian.com 2006 Survey results

Ajaxian.com is a leading online resource for the AJAX community, operated by early adopters of the technology.

survey06-all-large

Recommendation Report


ajax

Conclusion


Prototype (because of its flexibility and clarity) and GWT (because it is support by Google) are the ones are most valuable. If you consider overall ease of development, Yahoo UI is good due to its well documented code and detailed tutorials on the Yahoo website. Dojo provides more features and HTML widgets than YUI and Prototype. However, Dojo's widget customization requires some effort. Although, the functionality of each tool is important, you have to take into account which one you estimate will fulfil your needs thinking about the future, because every tool of this kind is growing and making the difference every day. In the end, YUI stands out as the easiest to work with.

Sep 24, 2009

Flex Vs Ajax Vs Silverlight

Overview - Flex VS Ajax Vs Silverlight

The problem :-
The Internet was originally designed for simply transporting documents and information. The technology it was built upon lacked the interactivity of desktop applications. That's changed in the past decade as innovators have developed a richer user experience, despite huge challenges.

The Solution :-

With RIAs we can now deliver very sophisticated, responsive, interactive and graphically rich applications over the web.RIA technologies are not only enriching user experiences, but also empowering businesses to reduce development time and costs, taking web development to a whole new level. The second wave of web applications is now starting to roll in. The questions companies need to ask internally is when to get on board, and how best to ride the tide.

FIVE DRIVING FORCES OF RIA

1. Broadband
Most RIA applications require download of an initial “thin client” application. This was a huge barrier when the majority of Internet users relied on dial-up connections. Broadband gets rid of this barrier and enables heavier content transports such as audio and video streaming.

2. Computing Power Shift
The difference in computing power between PCs and servers has narrowed significantly. For example, desktops, laptops and PDAs now offer audio, video, and color. RIAs utilize more client computing power than traditional send and receive web applications. This shift has created an ideal environment for RIA

3. Better Response to User Actions

Today more than ever, businesses demand complex and responsive applications.
Ex : Simple graphic banners or spot ads are gradually being replaced by interactive and programmed ads called “Rich Media.” Some Rich Media ads can even keep track of more than 20 different user interactions.

4. Leading Tech Companies Make Their Move

Big companies have begun to realize the benefits of RIA. For example, Google Maps and Gmail leverage RIA by using a technique called “AJAX” (Asynchronous JavaScript and XML).

5. Web Services & SOA

Web Services and SOA enable presentation layers to be completely independent from business logic layers. Most RIA platforms are pluggable presentation layers on top of existing middleware, thanks to the power of Web Services and SOA.

List of RIA Platforms / Approaches (Wikipedia)
  • Adobe Flash, Flex and Adobe AIR
  • Backbase
  • Curl
  • Google's GWT framework (Google Web Toolkit)
  • Java applets
  • Java applications
  • JavaFX
  • JavaScript / Ajax
  • Microsoft ActiveX controls
  • Microsoft Silverlight
  • Mozilla Prism
  • OpenLaszlo
  • REBOL 2.6 and Seaside for Smalltalk
Flex

Adobe Flex is a framework that allows a developer to build user interfaces by compiling MXML, an XML based interface description language. This Adobe Flex framework is compiled and turned into a compressed SWF file to be run in the Adobe Flash player.

Ajax

Ajax (asynchronous JavaScript and XML), or AJAX, is a group of interrelated web development techniques used for creating interactive web applications or rich Internet applications. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. Data is retrieved using the XMLHttpRequest object or through the use of Remote Scripting in browsers that do not support it. Despite the name, the use of JavaScript, XML, or its asynchronous use is not required.

Silverlight

Microsoft Silverlight is a framework that allows a developer to build user interfaces by compiling XAML, an XML based interface description language. This Microsoft Silverlight framework is compiled and turned into a compressed XAP file to be run in the Silverlight plug-in

Flex Vs Ajax
Forrester analyst Jeffrey Hammond, with other Forrester writers including Carey Schwaber, Ron Rogowski and Jacqueline Stone, authored a best practices article titled “AJAX or Flex, How to Select RIA Technologies” which addresses the advantages and selection criteria when considering the use of Flex or AJAX for RIA development. Here are some pertinent excerpts
from that piece:

AJAX is an incremental path to a better user experience. However, just because a development team has chosen to go with AJAX doesn’t mean that its tool selection effort is complete. There remains the important decision of how many and what type of AJAX frameworks to use.”

“Flex delivers productivity in the long run but takes more time to learn. Adobe is an attractive RIA solution because it combines powerful development tools (Flex) with a near-universal browser plug-in (Flash) that’s designed to simplify RIA deployment.”
“Managers who have concerns about small commercial AJAX providers or support issues with open source AJAX frameworks consider Flex a safe alternative. But there is a downside: To be productive in Flex, developers have to learn two new languages and an extensive runtime framework — something that can take between one and three months to learn.“

The study concludes with the following decision drivers:

“Use AJAX for tactical improvements and Adobe Flex for strategic implementations.
Choose AJAX when time-to-market is critical and updates are frequent. Experienced Web developers ramp up on AJAX quickly. AJAX also makes it easy to build RIA capabilities into existing apps with small, frequent releases. Finally, AJAX’s customization capabilities make it possible to tune client frameworks to meet specific application footprints; this makes AJAX the better solution for smaller RIA deployments and for deployments where performance is critical.
Use Flex for large-scale user productivity apps. Although Flash’s client footprint is larger than AJAX frameworks, its market penetration makes it the preferred deployment platform for larger, comprehensive RIAs. Adobe is a safe choice for those who place a high value on reliable support and product continuity, concerns that are key when making strategic technology investments. The downside is that safely comes at the price of openness.“
Performance Flex Vs Ajax

flexvsajax

Flex Vs Silverlight – Possible Outcomes

There are four possible outcomes that I see. The first is that Flex will continue to dominate the market place due to the maturity of their existing products, the widespread use and acceptance of Flash, and the large investments made by major software vendors in Flex technology. Microsoft will steal some market share but in the end it will be another failed attempt to conquer the web. I feel that this is the most likely scenario. Microsoft is already losing market share in the browser war and the operating system war, although they still have a tremendous lead over their competitors. Google is becoming a dominant force on the web and open source technologies are dominating the Web 2.0 world. In every aspect of computing, Microsoft is dealing with stronger competition then they have ever seen before. RIA will be even more challenging because they are not the leader in this space.

The second most likely option that I see is that Silverlight matches Flex’s market share. The big advantage that Microsoft has is the development environment and the fact that Flex currently does not integrate with .Net backends (although they are working on it). Microsoft already has a huge developer community and many of these people can easily be persuaded to adopt Silverlight as their RIA of choice. For companies that produce consumer facing content or control the end user client machines, the Silverlight plug-in issue is not that big of a deal. Many consumers are willing to download Silverlight plug-in just as well as they will download Flash, QuickTime, and others. It is the companies that deliver applications to other enterprises that will have the challenge. As a chief architect for a medium size company, one of our criteria for selecting vendor tools is that the tool is zero-footprint or requires no installation of software on client PCs. Many other IT shops will have the same constraint because of the B2B nature of their applications. If you have no control over the client’s desktop, forcing clients to push software out on their network can be a huge show stopper.

A third possible outcome is Silverlight will fail to gain any significant market share. I find this highly unlikely. Microsoft has a ton of money and smart people behind this product. Their product vision appears to be very solid on the surface and their initial product offering is impressive for the short amount of time that they have been in the RIA space. They should easily capitalize on the numerous loyal Microsoft shops that are already in place today and I expect them to strike several more big partnerships similar to the MLB deal. I think that over the next 2-3 years Silverlight will capture about 20-30% of the market share but no more.

A fourth possible outcome is that more competition will flood the market and other products will also compete heavily for market share. JavaFx and open source project Open Laszlo are already competing, but I believe this will be a two horse race between Flex and Silverlight.

Source www.irrlicht3d.org
Technology Platforms GFX Rendering Availability
Flex/AIR Win/Mac/Linux Excellent very good
.NET/Silverlight Win, ~Mac OK poor
US Job trends for Flex Vs Silverlight

flexjobs

source : www.simplyhired.com
http://www.simplyhired.com/a/jobtrends/trend/q-adobe+flex%2Cmicrosoft+silverlight

Flex Vs Ajax Vs Silverlight

Overview - Flex VS Ajax Vs Silverlight

The problem :-
The Internet was originally designed for simply transporting documents and information. The technology it was built upon lacked the interactivity of desktop applications. That's changed in the past decade as innovators have developed a richer user experience, despite huge challenges.

The Solution :-

With RIAs we can now deliver very sophisticated, responsive, interactive and graphically rich applications over the web.RIA technologies are not only enriching user experiences, but also empowering businesses to reduce development time and costs, taking web development to a whole new level. The second wave of web applications is now starting to roll in. The questions companies need to ask internally is when to get on board, and how best to ride the tide.

FIVE DRIVING FORCES OF RIA

1. Broadband
Most RIA applications require download of an initial “thin client” application. This was a huge barrier when the majority of Internet users relied on dial-up connections. Broadband gets rid of this barrier and enables heavier content transports such as audio and video streaming.

2. Computing Power Shift
The difference in computing power between PCs and servers has narrowed significantly. For example, desktops, laptops and PDAs now offer audio, video, and color. RIAs utilize more client computing power than traditional send and receive web applications. This shift has created an ideal environment for RIA

3. Better Response to User Actions

Today more than ever, businesses demand complex and responsive applications.
Ex : Simple graphic banners or spot ads are gradually being replaced by interactive and programmed ads called “Rich Media.” Some Rich Media ads can even keep track of more than 20 different user interactions.

4. Leading Tech Companies Make Their Move

Big companies have begun to realize the benefits of RIA. For example, Google Maps and Gmail leverage RIA by using a technique called “AJAX” (Asynchronous JavaScript and XML).

5. Web Services & SOA

Web Services and SOA enable presentation layers to be completely independent from business logic layers. Most RIA platforms are pluggable presentation layers on top of existing middleware, thanks to the power of Web Services and SOA.

List of RIA Platforms / Approaches (Wikipedia)
  • Adobe Flash, Flex and Adobe AIR
  • Backbase
  • Curl
  • Google's GWT framework (Google Web Toolkit)
  • Java applets
  • Java applications
  • JavaFX
  • JavaScript / Ajax
  • Microsoft ActiveX controls
  • Microsoft Silverlight
  • Mozilla Prism
  • OpenLaszlo
  • REBOL 2.6 and Seaside for Smalltalk
Flex

Adobe Flex is a framework that allows a developer to build user interfaces by compiling MXML, an XML based interface description language. This Adobe Flex framework is compiled and turned into a compressed SWF file to be run in the Adobe Flash player.

Ajax

Ajax (asynchronous JavaScript and XML), or AJAX, is a group of interrelated web development techniques used for creating interactive web applications or rich Internet applications. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. Data is retrieved using the XMLHttpRequest object or through the use of Remote Scripting in browsers that do not support it. Despite the name, the use of JavaScript, XML, or its asynchronous use is not required.

Silverlight

Microsoft Silverlight is a framework that allows a developer to build user interfaces by compiling XAML, an XML based interface description language. This Microsoft Silverlight framework is compiled and turned into a compressed XAP file to be run in the Silverlight plug-in

Flex Vs Ajax
Forrester analyst Jeffrey Hammond, with other Forrester writers including Carey Schwaber, Ron Rogowski and Jacqueline Stone, authored a best practices article titled “AJAX or Flex, How to Select RIA Technologies” which addresses the advantages and selection criteria when considering the use of Flex or AJAX for RIA development. Here are some pertinent excerpts
from that piece:

AJAX is an incremental path to a better user experience. However, just because a development team has chosen to go with AJAX doesn’t mean that its tool selection effort is complete. There remains the important decision of how many and what type of AJAX frameworks to use.”

“Flex delivers productivity in the long run but takes more time to learn. Adobe is an attractive RIA solution because it combines powerful development tools (Flex) with a near-universal browser plug-in (Flash) that’s designed to simplify RIA deployment.”
“Managers who have concerns about small commercial AJAX providers or support issues with open source AJAX frameworks consider Flex a safe alternative. But there is a downside: To be productive in Flex, developers have to learn two new languages and an extensive runtime framework — something that can take between one and three months to learn.“

The study concludes with the following decision drivers:

“Use AJAX for tactical improvements and Adobe Flex for strategic implementations.
Choose AJAX when time-to-market is critical and updates are frequent. Experienced Web developers ramp up on AJAX quickly. AJAX also makes it easy to build RIA capabilities into existing apps with small, frequent releases. Finally, AJAX’s customization capabilities make it possible to tune client frameworks to meet specific application footprints; this makes AJAX the better solution for smaller RIA deployments and for deployments where performance is critical.
Use Flex for large-scale user productivity apps. Although Flash’s client footprint is larger than AJAX frameworks, its market penetration makes it the preferred deployment platform for larger, comprehensive RIAs. Adobe is a safe choice for those who place a high value on reliable support and product continuity, concerns that are key when making strategic technology investments. The downside is that safely comes at the price of openness.“
Performance Flex Vs Ajax

flexvsajax

Flex Vs Silverlight – Possible Outcomes

There are four possible outcomes that I see. The first is that Flex will continue to dominate the market place due to the maturity of their existing products, the widespread use and acceptance of Flash, and the large investments made by major software vendors in Flex technology. Microsoft will steal some market share but in the end it will be another failed attempt to conquer the web. I feel that this is the most likely scenario. Microsoft is already losing market share in the browser war and the operating system war, although they still have a tremendous lead over their competitors. Google is becoming a dominant force on the web and open source technologies are dominating the Web 2.0 world. In every aspect of computing, Microsoft is dealing with stronger competition then they have ever seen before. RIA will be even more challenging because they are not the leader in this space.

The second most likely option that I see is that Silverlight matches Flex’s market share. The big advantage that Microsoft has is the development environment and the fact that Flex currently does not integrate with .Net backends (although they are working on it). Microsoft already has a huge developer community and many of these people can easily be persuaded to adopt Silverlight as their RIA of choice. For companies that produce consumer facing content or control the end user client machines, the Silverlight plug-in issue is not that big of a deal. Many consumers are willing to download Silverlight plug-in just as well as they will download Flash, QuickTime, and others. It is the companies that deliver applications to other enterprises that will have the challenge. As a chief architect for a medium size company, one of our criteria for selecting vendor tools is that the tool is zero-footprint or requires no installation of software on client PCs. Many other IT shops will have the same constraint because of the B2B nature of their applications. If you have no control over the client’s desktop, forcing clients to push software out on their network can be a huge show stopper.

A third possible outcome is Silverlight will fail to gain any significant market share. I find this highly unlikely. Microsoft has a ton of money and smart people behind this product. Their product vision appears to be very solid on the surface and their initial product offering is impressive for the short amount of time that they have been in the RIA space. They should easily capitalize on the numerous loyal Microsoft shops that are already in place today and I expect them to strike several more big partnerships similar to the MLB deal. I think that over the next 2-3 years Silverlight will capture about 20-30% of the market share but no more.

A fourth possible outcome is that more competition will flood the market and other products will also compete heavily for market share. JavaFx and open source project Open Laszlo are already competing, but I believe this will be a two horse race between Flex and Silverlight.

Source www.irrlicht3d.org
Technology Platforms GFX Rendering Availability
Flex/AIR Win/Mac/Linux Excellent very good
.NET/Silverlight Win, ~Mac OK poor
US Job trends for Flex Vs Silverlight

flexjobs

source : www.simplyhired.com
http://www.simplyhired.com/a/jobtrends/trend/q-adobe+flex%2Cmicrosoft+silverlight

Text Widget

Copyright © Vinay's Blog | Powered by Blogger

Design by | Blogger Theme by