Use The Right Tool for Every Task
- Everybody out there uses the framework
- X company (in AngularJS case it is Google) created or support the framework
- The framework includes needed feature
- The framework is cool
- The framework will help us gain rapid development
- And many other reasons
I really like AngularJS and I used it in a few projects myself. This post definitely isn’t saying that I believe that you shouldn’t use it.
On the other hand, I believe that only after you understand the needs in your project you should ask yourself which framework/library fits to the situation.
This is were the problem stands. With so many options out there and hype around some of them, web developers tend to make the wrong decisions or make wrong assumptions.
Let me explain what I mean with two small examples:
A web developer needs to develop a simple form. When he starts to develop the form, he adds AngularJS because it has a data binding feature. Then, he uses that feature only for a really small part (let’s say only one field). Everything works perfect, doesn’t it?
Nope! We have wasted resources and we used an elephant to stomp over an ant.
You might say that this fictional scenario is (hmm) fictional but it’s not…
A web developer needs to create a simple list web component. He works on a legacy application which is traditional server oriented web application. In the application they don’t use AngularJS but rather a template library. He convince the team that this is the time to add AngularJS to the project and that they will gain a lot from having AngularJS in the project later on. You might back the developer because AngularJS is cool and includes a lot of features, but after seeing so many failing projects there are other ways which are better then adding a framework.
What I’m trying to say I’ll write in one sentence – use the right tool for every task.
Please evaluate your needs first and then think what is the framework/library that can help you to solve your problem.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)