Angular vs React

Angular is a full framework with all the tooling and best practices designed on top of it. Suits ones, hates the others. React on the other hand is just a small view library that you would need while making an app. This might be both good, and a bad thing, and the article should help you to finally make the right choice.

libraries

And here are the main libraries I will keep in mind:

  • Angular
  • React
  • Vue

Learning curve

Let’s assume you know JavaScript + ES2015 quite well. What library is the easiest to learn next?

  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.

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.

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.

Tooling

  1. React, angular and vue. All have great CLIs and work with any webpack-like tool.

Community and popularity

1.Definitely React has been the most popular when it comes to English frontend and full stack communities in 2016. It is also becoming a good choice for native JavaScript mobile and even desktop apps.

2.Vue and Angular. Vue because it is growing so quickly, and angular because it is made by google and its predecessor, angular 1 used to be very successful back in the days.

Jobs

  1. React and angular, as depending on where you are one of these frameworks will slightly dominate.
  2. Vue is less popular and is not supported by a big company, therefore businesses choose angular and react.

Performance

No ranking for this one, as all of them are comparable. React might be a bit faster when it fully support fiber, but now we are still in beta and nothing really can be done about it.

Company’s perspective

  1. Angular has free open source licence. It is supported by Google, making it probably the best choice for a company, as there is also less things that differ between angular practices.
  2. React used to come with a patent clause that for some businesses was quite a big issue, but recently they switched to MIT.
  3. Vue isn’t a child of a big company, it’s a very successful side project started by one person and therefore companies tend to ignore it more often, however they shouldn’t in my opinion.

Beyond the web

This is where there is a lot to talk about; native rendering. All libraries are capable of doing so, but some of them perform better than others.

  1. react — with react native, alibaba rax, reactWindows and next.js, it is the best choice when it
  2. vue is the best choice for vue developers that enjoy native mobile development, all thanks to alibaba weex.
  3. angular comes with ionic 2 and nativescript, but neither of those mobile frameworks allow angular to reach the performance of react native.

Simplicity + code length

  1. vue comes with prebuilt data binding and MVC model, making it way easier to set up compared to react and angular.
  2. react is fairly simple to understand but in fact it takes a long time to set up a react project.
  3. angular is not simple at all. Its complexity often causes a lot of confusion and angular specific 3rd party libraries and syntax

Development time

  1. Vue is certainly easy to set up and does not require many changes or syntax and that’s what people love about it; it was designed to solve the fatigue.
  2. React takes longer to set up, but then you can start to make an app and it should be relatively easy to add new features.
  3. Angular although being very competitive, the amount of unnecessary syntax it requires to do simple things puts angular in the last place.

size

  1. vue is the smallest and contains a lot as well. Actually you might think it doesn’t matter, but say that to a cheap android 3g smartphone and I don’t think you will be so sure about it.
  2. react is bigger than vue, but still smaller than angular. That’s all I’ve got to say.
  3. angular is way bigger, causing longer load times and performance issues on mobiles.

The future / 2017

Here are my predictions for 2017 for all these frameworks:

  • Vue will keep gaining popularity and more developers will switch to it. It is possible that it will influence a different big company to promote vue and encourage companies to use it. There is also another thing, native platform that should be out there in the early 2017.
  • React team will introduce fiber, and make react way quicker than vue and angular.
  • Angular team will try to encourage more people to use angular, and in my opinion they will fail miserably.

So what is the best for you?

To sum up, there is never a perfect solution and there never will be. However, here is a useful list to help you make the decision:

  • if you are a passionate developer, try all, but chose between vue and react and let your gut make the decision
  • if you are a start up, go with either react or vue.
  • Angular would be a better choice for companies with big teams
  • Google -> angular
  • if you like simplicity, get vue.
  • if you like to use templates, go for vue or angular.
  • if you prefer JavaScript and JSX, try out everything.
  • if you ? Typescript, use angular or maybe, maybe vue.

To summarise, choose your framework as soon as you can and don’t, please don’t stay undecided. I had that for a few moths, not fun. I decided to sacrifice the popularity and go for what my mind tells me is the best, currently vue.

funfunfunction (a YouTuber) said the best thing I have ever heard about the JS framework fatigue:

There is a point in your programming career, when you realise that there isn’t a best tool

And with that said, I would like to encourage you to keep learning and exploring; everything will teach you something, and there is no right or wrong choice here, just go for it.

 

 

— Webwinsome technologies,

Best web designing company in Visakhapatnam.

Progressive Web Apps are the future

In the battle for mindshare between mobile apps and the mobile web, there’s no doubt that mobile apps have come out on top. But that is changing, according to a report from Gartner, Progressive Web Apps Will Impact Your Mobile App Strategy. The future, Gartner says, is with an emerging type of web page, called a Progressive Web App (PWA). PWAs, Gartner says, “use the latest browser technologies to meld the accessibility of the web with the presence of the mobile app.” They bring “app-like characteristics to websites without requiring the consumer to download a full app.”

Here’s why PWAs are important, and how to deploy them in your enterprise, according to the report.

The report warns that “The pace of app downloads is slowing down in most consumer markets around the globe, especially where mobile device adoption is mature.” That’s because of “app fatigue,” in which “users are overwhelmed by the number of apps and hit a ceiling on the number of apps that they are willing to install on their devices.” As a result of this, Gartner projects, by 2020, “progressive web apps will have replaced 50% of general-purpose, consumer-facing mobile apps.”

That means enterprises need to re-evaluate their mobile strategies. Gartner says that PWAs are especially useful when companies want to reach occasional users of their website rather than their most loyal users. They’re especially useful for retailers, in which only 10% to 15% of customers will download a mobile app. But other types of businesses can benefit as well.

For example, Gartner notes that Alibaba.com, the world’s largest online B2B trading platform, saw a 76% increase in conversions after upgrading its site to a PWA. Weather.com converted its site to a PWA – and saw an 80% speed bump in page load time, and nearly 1 million customers opting in to receive web notifications.

But Gartner warns that companies need to re-think their websites from scratch when converting to a PWA. “Designers need to think about a PWA site in more of an app-oriented experience context,” the report says. That means including touch and gesture-based controls, having push notifications, and considering the offline experience when designing them.

Finally, the report says that companies should take a hard look at their existing mobile apps, and should “Sunset mobile apps that don’t make use of native device features that support mobile-first experiences, and replace with equivalent PWAs to reduce costs.” It adds, though, that mobile app initiatives shouldn’t be halted entire, particularly if iOS is important to your business.

 

-Webwinsome Technologies,

Best Web designing company,

Best Web Development company,

Visakhapatnam.