JS frameworks: React, Angular, or Vue?

Reading Time: 5 minutes

Introduction

In this tutorial, we will discuss three of the most popular javascript frameworks: React, Angular, and Vue. We will look at the pros and cons of each, their usage statistics, discussions about which one to choose, and which one should be studied for future use. Because programming languages and frameworks are all tools in a developers tool belt, and each has its place. It is worth learning tools you find meaningful, useful to accomplish a task that’s not only convenient, but is suitable for specific tasks. Again, we should remind ourselves that because these changes occur rapidly, after a year and a half a year, the situation can radically change.

For quite some time now, the frontend javascript frameworks have been developing and releasing updates so fast that it’s difficult to keep track of it all. The problem can arise in which it seems that while you are studying or working on one platform, and it is already heading towards becoming obsolete. Of course, that is a bit of an exaggeration, but the fact remains that if you do not keep track of all the updates, trends, and changes you risk becoming irrelevant for certain work.

React

React or as it is sometimes known React.js or ReactJS, is an open-source JavaScript library used for developing graphical user interfaces. React was developed by Facebook, Instagram, and a community of individual developers and corporations. It was first used in 2011 by Facebook and later in 2012 by Instagram and was finally fully open-sourced in 2017 under a standard MIT License. React is outstanding for creating modern single-page applications of any scale and size. The latest version 16.13.0 was released on February 26, 2020.

Pros:

  • React is quite fast due to the implementation methods of React Virtual DOM and various rendering optimizations.
  • React provides good server-side rendering support, which is convenient for content-oriented applications.
  • React is easy to learn thanks to the simple design and use of JSX for templates and very detailed documentation. The developer spends less time writing code specific to the framework, and more on writing modern Javascript code.
  • React provides excellent support for the Progressive Web App (PWA – mobile site creation format) thanks to the “create-react-app” application generator.
  • React transitions easily between versions as Facebook provides “code modules” to automate many of the processes.
  • React uses functional programming concepts to create easy-to-test and reusable code.
  • You can apply the knowledge and skills gained in React to development on React Native – this is a framework for developing cross-platform applications on iOS and Android.

Cons:

  • The community is often divided by writing CSS in React, which are divided into CSS module type style sheets and CSS-in-JS, which does not always affect projects well.
  • React is increasingly moving away from the programming paradigm of object-oriented programming (OOP), which for many, can become an obstacle, especially for those who like to use and apply it.
  • Mixing logic patterns can be disconcerting for developers initially.

Some companies which use React are Facebook, Instagram, Twitter, Netflix, WhatsApp, Dropbox, Airbnb, Codecademy, Slack, Microsoft, New York Times, Yahoo, and many others.

Angular 

Angular is an open-source JavaScript framework primarily designed for developing single-page applications. The main goal of Angular is to increase based browser applications, as well as simplify testing and development. Angular is one of the oldest JS frameworks, and was developed by Google in 2009 and released in 2010. Significant changes occurred in 2016 due to the release of Angular 2, and the abandonment of the original name AngularJS. Angular 2 is now simply known as just Angular. The latest version, 9.1.4, was released on April 29, 2020.

Pros:

  • Angular was developed using Typescript and as such, has close support ties with it.
  • Angular has detailed documentation which is easily understandable, but there is a good learning curve in place.
  • Angular-language-service: This service provides for auto-completion of the HTML component templates.
  • Angular supports MVVM (or Model-View-ViewModel) which lets developers work separately in the same section of the application using the same dataset.
  • Angular uses one-way data binding. This provides exceptional application behavior, which minimizes the risk of possible errors.
  • Angular’s structure and architecture are specially designed for the high scalability.

Cons:

  • A wide variety of different structures (Components, Pipes, Modules, Injectables), which complicates the study compared to other frameworks that use only “Components”.
  • Rather slow performance, on the other hand, is solved by using the “Change Detection Strategy,” which helps to control the rendering process manually.

Companies that use Angular include Microsoft, Google, Cisco, Apple, Adobe, GoPro, Udemy, YouTube, PayPal, Telegram, Nike, MacDonald’s, AWS, and many others.

Vue

Vue (also known as Vue.js) is an open-source JavaScript framework for creating user interfaces. Vue easily integrates into projects using other JavaScript libraries and can function as a web framework for developing single-page reactive-style applications. It is perfect for creating highly adaptable user interfaces and sophisticated single-page applications. The most recent version, 2.6.11, was released on December 13, 2019. This is the youngest framework among the three systems.

Pros:

  • Vue provides detailed documentation that allows us to learn quickly which saves a lot of time by requiring only a basic knowledge of HTML and JavaScript.
  • Vue provides improved HTML capabilities, which help to optimize the processing of HTML blocks. It shares many similar characteristics with Angular.
  • Vue can be used to create single-page applications, as well as for more complex web-based interfaces.
  • Vue adaptability can easily be transported from one framework to another due to the similarities with React and Angular in terms of design and architecture.
  • Vue is small in size and takes up very little space while maintaining its speed and flexibility This often aids in achieving good production capacity.
  • Vue’s scaling capabilities helps us when developing large reusable patterns.

Cons:

  • Often, there can be issues when integrating Vue into larger projects, due to a deficiency of experience in solving existing problems.
  • Vue does lack of popularity somewhat due to a lack of extensive experience in good implementation solutions, and other technical aspects.

Companies using Vue include Alibaba, Xiaomi, GitLab, Adobe, Nintendo, and EuroNews.

Statistics

Let’s begin with the statistics from Google Trends. Due to the fact that we can sort by different input data, statistics may vary. Google Trends can provide more than just framework information.

google.trends1.051220

As you can see, React always has more requests than others. It is also important to note the regions in which you are most interested.

As you can see, React always has more requests than others. It is also important to note the regions in which the frameworks are most interested.

regional.us.051220
United States
regional.in.051220
India
regional.jp.051220
Japan

Let’s take a look at the statistics from The State of JavaScript site. This site does analyze according to the direction of the profile.

stateofjs.satisfaction.051220
Satisfaction
stateofjs.intrest.051220
Interest

The following graph outlines the experience range.

experience.range.051220

And here is the salary ranges for each framework.

Statistics from developers on Stack Overflow collected for 2019 are as follows. 

web frameworks
Most popular frameworks.

Most loved, dreaded and wanted JS frameworks.

most.loved.051220
Most Loved
most.dreaded.051220
Most Dreaded
most.wanted.051220
Most Wanted

Here are download statistics from GitHub.

github.stats.051220

Finally, we also present an overview of all the features of each framework.

comparison

Conclusion

In reviewing all three of these frameworks, React, Angular, and Vue, our choice would be React. Granted as stated earlier, using the right tool for the right job is paramount so your choice may vary. All three platforms are used by major firms across the world and each offers multiple benefits from which we can utilize. Overall, the winner as selected by developers is React.

To see which Liquid Web service can provide the most benefit to you and your product, give us a call at 800.580.4985, or open a chat or ticket to with us to speak with one of our knowledgeable Solutions Team or an experienced Hosting Advisors today! We can provide solid answers to your questions about which options are right for you!

Author Bio

About the Author: Ellen Sletton

I'm 23 years old Linux Tech who always takes NO as Next Opportunity. Every day I'm trying to learn something new and share my knowledge with others. My free time I spend with my dog Emil or doing some UI/UX design or simply making an inspiring photo for my blog :)

Sharing knowledge helps me generate new ideas and stay motivated.

Refer a friend and get a $50 hosting credit!