Why you should avoid AngularJs or ReactJs?

Why you should avoid AngularJs or ReactJs?

First of all I am not a blogger so I have no absolute expertise in writing things up. Perhaps, I want to keep it simple as much as I can.

Technology is awesome and it is evolving day by day.

Being a web form developer till 2010 I missed ASP.NET MVC updates (because I jumped into MSBI, apparently). Now, when I look the web development graph I am astonished with the progress Microsoft did on ASP.NET framework. Web development technology is progressive & I admit, I just recently came across AngularJs and ReactJs. I didn't even knew anything else other than JQuery.

Now, like everyone else I had a question "Why I need AngularJs or ReactJs at the first place?" This questions bugged me a lot. 

but the answer is pretty simple and straight forward - "How you want to control your DOM?" Almost every MVC platform teach you to to control your view from controller. Shouldn't that be the way MVC works? 

Of course, unless, you don't want your controller to take full charge of the view you can take help of AngularJs or ReactJs for the same. If I would be a hardcore .NET developer I would likely to use strongly bind views in ASP.NET for various reasons. For the same reason, I would omit AngularJs and ReactJs to control my view. 

My point is pretty straight forward and clear; basically, you don't have to use AngularJs or ReactJs in your project just because they are "New" cool JS framework which may add up in your resume/skill set. You may, eventually, mess up the things which can be easily done with basic architecture of MVC and few lines of JQuery (whenever required). It's a question of how do you want to model mutable state in your application. Two way binding is not always as good as one way binding - especially when you don't need it.

This doesn't mean that these framework has no value addition. Yes, use them only when you need them. Remember few most important thing about creating a wonderful web application:

  • Target for increasing browsing speed (things get complicated with you are developing application for million users). Reduce the amount of code to be loaded in client browser. 
  • If something can be done with smallest/easiest Framework it should be done with that framework only.
  • Prefer developing application which is good for both fellow developers and end users. If any of them doesn't understand what you want to achieve, you are gone.
  • Just because something is awesome doesn't mean that it is good for your application too. 
  • Both JQuery and AngularJs make similar AJAX request. You may don't want Angular to control DOM for simple delete operation on a table row.  Also, JQuery is about 20% smaller than Angular (Not a huge thing when comes to performance but still worth when dealing with large site)

I am not defending JQuery here; JQuery is also a plugin which should be used only when it is required. 

Yes, if you are developing a SPA then all above statements may be invalid for you. But at the same time I would say that we can expect some more enhance Framework just for SPA in next few years because:

"Technology is awesome and it is evolving day by day."

P.S.: Though, I only have experience in web development using Microsoft ASP.NET framework but I believe this should be applicable to all web dev who are using MVC architecture.

To view or add a comment, sign in

Others also viewed

Explore content categories