This battle is getting ridiculous attention from the developer’s side. I want to wipe off the line of battle and bring you some thoughts about why we need to explore the world outside of our frameworks or technologies.
There was a number of reasons why WEB evolved to the state which we see at the moment. Let’s list some main points why SPA (single page applications ) appeared on the stage of the modern web development:
I am not going to deep dive inside but if you will research pre-conditions for SPA, you can find much more sense in the modern web development. Some tools and patterns will appear in the new light for you!
Study the past if you would define the future.
Originally started from an idea of building solid static HTML pages and then add dynamic behavior. So that makes perfect sense if we would think about that form the context of 2009 when 80% of the web was built with the tremendous amount of forms. Also, this approach helped to separate developer roles.
(By Angular I mean Angular 2+ versions)
Angular was created with the whole bunch of brilliant ideas across different Frameworks. With the TypeScript as the main language Angular got all advantages of strictly typed languages. Angular-cli was inspired by Ember-cli. The component approach was already on the stage, and we can see benefits of usage in any modern Framework.
Angular got much more options to manage data flow in the application with the flexible change detection configurations and 3rd party libs like NGRX. Which pretty much resulted from Redux state management library widely used by React community.
React was also strongly affected by community experience in building web applications. They picked the brilliant strategy of component reusability. And separating presentation/logical components. With the unique rendering technique and Shadow DOM React is the overall winner of rendering performance across frameworks. The Flow might be also a way Facebook decided to adopt TypeScript benefits for React ecosystem.
Overall, we can see how much modern Frameworks adopted shared knowledge to for their needs to improve overall experience.
You can get a lot of benefits by trying to implement the same thing with different Frameworks. Some architecture patterns can be shared and applied from one app to another.
You can’t pick because you don’t have choice if you have never tried another one.
Give yourself freedom of choice by learning alternative solutions!
It simply extends your mind. If you’re already a guru of React or Angular don’t lock yourself in the borders of the single technology.
Pull yourself out of the comfort zone and learn a new Framework, Language, Technology! Be a Generalist in the world of every-day changing technologies and you will get a true value of each community.