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.