How To Choose a Javascript Framework

In today’s date, the world of web development and javascript web apps are really moving fast. The jungle of javscript framework is enough dense already; still many new framework trees are rising their heads. So, choosing a single one from this deep jungle of  ember, angular, backbone, batman, canjs, dojo, jquery, react, zepto and lot more, is really a tough and confusing task. Still, if you consider the following points I hope you will feel ease to choose a javascript framework for your project.

Is it really saving your time and money?

Well, the main reason behind the birth of javascript frameworks, is to get rid of the frustration of writing the same sort of code again and again; in simple words, to save time and money. So, first of all, what you need to consider before selecting a javascript framework is, do you really need it? Is it really saving your time and money? If you have to use a very specific subset of the features a framework provides, then I think it’s better to write that part of codes using simple javascript. Why should you load a huge library when your need is just for a few lines code?

Set your requirement list

Considering that using JS frameworks are beneficial for your project, I’m coming to the next point of setting up requirement list.

All the frameworks have their own pros and cons; everyone doesn’t use the same technique to perform their tasks. So before selection you must set your requirement list like, data binding, testability, fast rendering, good observers, separation of code logic, modularity, ease of use, size etc.

Once you are ready with your requirement list, you can then compare your list with the features provided by each of the frameworks and easily identify which one is more suitable for you.

Size and durability of your project

Size, duration, dependency, these are really key factors to choose a framework. If you need a rapid fast development for a small project you can go with angular, or any other html compiler type frameworks; but if your project is huge and ambitious, you need to follow proper code separation and all. For that frameworks like ember may go handy. But if you want to complete a mid type project with ease, I think angular is the best option. So, according to size, durability, duration, dependency the preferred framework will change.

An article of void canvas, comparing ember angular and backbone may help you to understand this point properly.

Performance in your environment

Performance is always the key factor if you are in a B2C business (business to client). But this is something which is very hard to measure, because this has a lot of dependent factors. If you change the scenario, the winner will be changed. I’ve considered few scenarios to test two of the javascript frameworks. Hope this will help you to create your own testing environment to test the performance of the frameworks in the environment of your project.

Environment friendly library

This point is valid only in the case of including a framework in your exiting project. Cause an existing project may have its dependencies to some libraries, or to some code structures and all. In that case you must test first if the framework you’re going to select really works properly on that environment or not.

Play on your own strength

A known devil is better than an unknown angle; that’s I always do believe. So if you are comfortable with a particular one, and you don’t have much time to learn the second one, it’s better to go with the first even if people speak in favour of the second. Cause at the end of the day it’s you and your team who’s going to work on the project.

Don’t go with trends

Trends are something which misleads people a lot. Without knowing something properly if you take any step because “people said it”, it can be really dangerous in the long run. Trend is something which flows with the general things. But your project may not contain those general points in it. So never go with trends. Use your own head to process the things out and make a solution.

Still having issues?

If you still have issues understanding the above article, please leave a comment below and we will try to address that. In case you need help in your projects or understanding anything related to Programming; contact me, Paul Shan for assistance. Thank you for being a reader of VoidCanvas.

About This Author

Hello! I am Paul Shan, a JavaScript Expert, Full Stack and DevOps Engineer cum Consultant based out of Bengaluru, India.