<img alt="" src="https://secure.leadforensics.com/150446.png " style="display:none;">
Go to top icon

Choosing right JS framework for the task

Robina Gulati Mar 20, 2013

Prototype rich client-side applications JavaScript frameworks Sencha EXT JS 4 YUI Library Dojo jQuery JS frameworks gwt Technology MooTools

Every web app that is fast, responsive and modern requires unique development approach. The web apps no longer can be built around full page loads and get progressively enhanced in order to behave in a dynamic manner. There is a wide variety of JS frameworks available which are unique in each of their kinds and provide programming rich client-side interactions in web applications.

When we have so many options, it is significant to choose a framework that not only serves the current requirement but also serves in the long run.

There could be a visual comparison between all the frameworks like:

  • jQuery
  • GWT
  • Sencha EXT JS 4
  • MooTools
  • Dojo
  • YUI Library
  • Prototype

The first thing to analyze when choosing a JavaScript framework is identifying your need correctly:

  • If you want to enhance your site by adding behaviors to it and want to extend it with plug-ins, in other words have to perform DOM manipulation, you can do that with jQuery. Ext JS has recently released a free library Ext Core to counter jQuery and proves to be better.
  • For making widgets and custom JavaScript based GUI, Dojo framework is a good choice. YUI also provides good widgets. But if you want to give a more desktop like look and feel, Ext JS is the best. Though important to note is that it’s paid which means it requires a developer license when you go to production.
  • When a large application needs to be built then Dojo framework is fantastic for building a large scale application that will do a lot and end up with a ton of JavaScript.
  • For creating rich dashboards and admin consoles, Ext JS can be used. It has built in look and feel features so it’s easy to reuse. It’s already created look and feel makes it very easy to reuse. Though it’s paid, it provides a lot of extensible, uniform-looking components (layout manager, templating support, trees, grids, tabbed panels, windows, etc.)
  • In case of the development speed, jQuery would be the best choice, as it’s easy to learn and uses less lines of code. But it’s basically for DOM manipulation. Dojo is huge but then you can learn only what you want to use. Prototype fits somewhere in between these worlds.
  • The next criteria of comparison could be the readability and maintainability of code. Prototype is much more readable than jQuery. Dojo is also somewhat readable. On the other side, jQuery code is difficult to maintain and to reuse.
  • Almost every framework provides a good Ajax support but jQuery seems to be lacking in this feature.
  • The style of coding is a significant comparison criterion for the JS Frameworks. JQuery does not follow what we could call the traditional class based style of coding but is more intuitive. This is why it’s great for designers wanting to add some dynamic magic to their webpage. But a traditional developer will find better coding style followed in Prototype, Ext Core, MooTools and even Dojo. This makes the code more maintainable.
  • The criterion which plays a huge amount of role is cost. This would be the only problem with Ext JS, but it is because it has ample of things in the framework that are worth the higher cost.

Similar Blog

The development of any application is divided into iterations and on the completion of the first iteration it takes several ...

By Robina Gulati Apr 04, 2013

e-Zest is a leading digital innovation partner for enterprises and technology companies that utilizes emerging technologies for creating engaging customers experiences. Being a customer-focused and technology-driven company, it always helps clients in crafting holistic business value for their software development efforts. It offers software development and consulting services for cloud computing, enterprise mobility, big data and analytics, user experience and digital commerce.