Comparison Between React, Angular and Vue

Binayak Behera
Pixance Studios
3 min readApr 4, 2020

--

Whether you are a beginner, a developer, a freelancer, or a project architect forming strategies, it is a wise decision to be aware of the advantages and drawbacks of each framework in detail.

Learning curve

  1. Vue is probably the best choice if you want an easy to learn framework.
  2. React uses the least abstractions, however it will take more time to learn the best practices, as there are a lot of ways in which you can do the same thing or go wrong.
  3. Angular goes 3rd and although after you learn angular you should know everything else associated to it (typescript, MVC…), angular itself is a huge library that requires more time to learn.

Popularity

According to the 2017 Stack overflow survey, Angular is loved by 51.7% of developers and React is embraced by 66.9% of surveyed developers. React and Angular have almost the same level of users in the category of popular front-end frameworks. Vue hasn’t occupied a place in any of the above lists but has an ability to participate in this battle.

Above all, you should not forget that Angular and React are being used by big names in the industry. Google uses Angular a lot in their projects and brands such as Facebook, Airbnb, Dropbox, WhatsApp, and Netflix are using React in their development environment.

Community Support and Growth

As React is powered by Facebook and Angular is maintained by Google, there’s no doubt on the growth of both these frameworks. In both frameworks, updates and releases are published frequently but they are well maintained when it comes to migrations. Upgrades are not a problem according to the developers in React and in Angular, there will be one major update every six months. The Angular team regularly announces version updates, releases, and depreciation periods.

If we consider Vue.js in this way, there’s a migration helper tool which makes migration easier. But in the large app, it might cause a problem as there is no proper roadmap which focuses on versioning and their plans.

React is more flexible than Angular because Angular is a full framework and React is a set of independent, faster, and evolving libraries, and, for that, you have to keep an eye on every little module that is no longer supported or maintained.

3rd party library compatibility

  1. React. Although it doesn’t work with DOM, it is pure JavaScript logic and its popularity even the DOM based libraries have their alternative in React.
  2. Vue works perfectly for both DOM and JavaScript and is only second because it has less framework specific libraries that could actually be a good thing for others.
  3. Angular would have done better, if not Typescript that requires type definitions for every library.

Scalability

  1. Angular is easy to scale thanks to its design as well as a powerful CLI.
  2. React claims to be more testable and therefore scalable than vue and I think that is partly true.
  3. Vue being just behind react, it is a good choice however it lacks a list of best scaling practices, resulting in a lot of spaghetti code.

Run-time Performance

Vue has better performance and is much, much easier to optimize because it doesn’t use dirty checking. Angular becomes slow when there are a lot of watchers, because every time anything in the scope changes, all these watchers need to be re-evaluated again. Also, the digest cycle may have to run multiple times to “stabilize” if some watcher triggers another update. Angular users often have to resort to esoteric techniques to get around the digest cycle, and in some situations, there’s no way to optimize a scope with many watchers.

--

--