logo-footer

Frameworks: Angular, React and Vue.JS

Mariel Lettier

Frontend frameworks are not just a technology question.

Choosing the right technologies for a software application’s frontend, might seem relatively inconsequential at a non-technical level. However, frontend technologies can have business impacts, too. Furthermore, the frontend development can affect important issues like an app’s performance, scalability, and expense.

It’s important for all decision makers, when making an application, to be aligned when choosing frontend technologies. Here we’ll look at three of the most popular Javascript frameworks. They present tough decisions on development level, but we’ll focus mainly on the effects they have on the business' side.

null

What is a Javascript framework?

Javascript (JS) is a coding language, responsible for creating the interactive elements of a website, such as logins and animations. It’s what makes web applications possible!

Since websites often share characteristics, Javascript technologies keep emerging to help developers organize and repurpose their codes. Frameworks act as a scaffold, helping structure and application. Moreover, they include libraries of pre-written code pieces.

Vanilla JS can be used to custom-write everything,
of course. Nevertheless, it can be time-consuming.

Frameworks and libraries are a bit like cooking with recipes and pre-made ingredients. In this scenario, the recipe may be the pattern that allows dev teams to structure the application’s codes. On the other hand, a pre-made ingredient can be anything: from a form to an interactive button. These types of elements are added and styled accordingly, to match the application’s goals.

Right now, most popular frontend JS frameworks are Angular and React, with Vue.js recently gaining ground. (Technically, Angular is the only complete framework in this group. While React and Vue.js are something among a framework and a library, we’ll refer to them all as frameworks.).

Choosing a framework often comes down to two methods:

Look at trends: Read about the options and research what similar apps are using.
Take advice: Get a good developer or development team on board and let them choose.

First method’s problem is that many coders write articles for other coders, over a technical basis. This makes it kind of difficult to discover the benefits of each framework. It’s tricky to think what would be best for an app if it’s not even starting its building.

However, the second method’s issue is that app’s best interests aren’t always top of mind for all developers. Often developers, and even teams, aren’t experts in every single tech. Usually, they have a handful in which they rely and specialize. Obviously, they would rather work with technologies they know well, over developing with something new.

First, the good news!

With a good development team, it’s very unlikely that a framework choice can ruin an application. Best teams are aware of how to correctly implement a specific framework. They do this in a way that allows them not having to build an app over and over again. Of course, they will typically work along a common framework. Most common JS frameworks share many positive features.

For instance, Angular, React and Vue.js:

  • Perform well.
  • Speed up development time.
  • Allow components to be reused.
  • Have loads of documentation and community support available.

How top frameworks differ

Angular

Creator: Google | Launch Year: 2016

Angular can be the heavy hitter in this group. It’s one of the most widely-used frontend frameworks, with established companies such as PayPal and Upwork. Also, it’s the most “opinionated” of all. This means that, when used, it dictates the structure of the whole app. It even uses its own variant of Javascript as its base language, Typescript.

This means that Angular is not only hardest to learn, but the most inflexible of this list of frameworks. While this may frustrate developers, it creates more stable and consistent apps, being appealing to large enterprises.

React

Creator: Facebook/Meta | Launch Year: 2013

Over the last few years, React has fast become a popular framework, being also the main contender to Angular. It has wide usage in all Meta platforms, including Facebook, Instagram, and WhatsApp. On top of that, it’s used by companies like Twitter and Uber.

React’s design is modular, and applies to different sections of an app. While it’s a library for the view layer, it’s combinable with frameworks like Redux to improve its capabilities.

Vue

Creator: Evan You (former Google dev.) | Launch Year: 2014.
An MIT-licensed open source project.

Vue may be seen as the underdog in this group. Yet, without backing from any major company, its popularity is growing. Just like React, Vue is modular, able to apply on application’s parts or integrated with others.

A huge factor in its popularity it’s that it is easy to use. It offers React’s flexibility but in a lightweight and style-natural way. Developers’ love for Vue show in 2018’s State of JavaScript's Survey. On this occasion, over 90% of people interviewed said they want to use it again. In comparison, Angular has a rate of 41% for the same category.

Business concerns regarding frontend frameworks

Flexibility

Possibly a double-edged sword.
A full framework, like Angular, will dictate how an application is organized and structured, creating a more predictable result. However, the trend is moving towards modular frameworks, like React and Vue, which offer creative freedom to developers. On the other hand, this liberty can be tragic when combined with poor structure and documentation decisions. A team using a modular framework, needs at least one person in charge who can ensure that best practices are followed.

On one occasion, a client comes to Capicua, with an app project on React created by another dev team. The other team builds the frontend with custom React libraries, but don’t have any documentation for its process. We then proceed to investigate a lot, in order to discover how to work with these specific libraries.

Performance

Not all frameworks perform the same.
Speed is always a crucial factor in any application’s success. For instance, users will abandon an app, if there’s any loading delay. In this list, Vue is the lightest framework, while Angular is the heaviest. Yet, Angular’s latest updates address their previous performance issues. Additionally, good developers can optimize performance through a variety of methods.

Developer Availability

A hidden expense.
We have to consider the ease of finding developers with knowledge in a certain framework, but also their cost. With React’s increasing popularity, the amount of developers with experience with it is still catching up.

This correlation in supply and demand means React devs are demanding higher salaries. Compared to React and Angular, Vue developers have the lowest average salaries. An explanation for this may be that Vue is mostly used in Asia, where dev salaries are relatively low. But, because of this, Vue developers with experience are harder to find.

Learning Curve

Ability to easily onboard devs.
While Angular has a steep learning curve, Vue is intuitive and easy to learn. This is a huge plus for Vue, even one that may overcome the previous point about availability. Beyond that, if experienced Js developers use Vue, they can come aboard a project with it.

Backing

Will the framework become obsolete?
Technologies are constantly changing, and the frontend scenario could shift drastically in a short period. While it’s impossible to predict the future, everything indicates that React will remain popular. This deduction is possible based on its widespread use and popularity in dev communities. The most vulnerable of these is Vue, as it’s an open-source project. Nevertheless, Asian giants, like Alibaba and Xiaomi, choose it for their products. It seems unlikely to disappear any time soon.

Vue, Angular and React comparison

null

Conclusion

The key factor for success in frontend frameworks, is to have a great team of developers. For instance, they will know which and how to choose, implement, and optimize them correctly. On the other hand, knowing the business impacts of each of them can help app owners to successfully plan the future, while also keeping track of the project’ best interests.

We are ready
to make your project happen

Let’s talk