While the React’s brothers (Angular, Ember, Backbone) are dubbed as client-side MVCframeworks, this guy is different. His creators call him the ‘V’ of MVC. In other words. he entirely focuses on ‘View’ which describes the User Interaction part.
React is the fastest of the bunch. He carefully notes down the differences in his in-memory cache and use these differences to update the DOM in browser, which is what gives him the boost. This is the Virtual DOM feature.
Other notable features include One way dataflow and JSX (the react components are basically JSX).
React vs Angular
React alone is not comparable to Angular. Angular is an entire framework while React is just a library. But with React Router (for routing), Relay, GraphQL (for declaring dependencies) and React Native, it clearly outweighs Angular.
With React we attain the freedom to choose, which is lacking in Angular. This freedom of choice is a great deal since developers can make decisions on how and what to use with React. But Angular does not provide this freedom. We are bound to follow some rules and hence developers are limited to choices.
What is happening now?
With the release of Angular 2.0, and the news that it is not backward compatible, React swooped in and stole the hearts and minds of legions of developers with a ‘simple view library’. React has moved on from a simple view ‘library’ to an ‘ecosystem’ and more and more developers are flowing in.
React js Reddit popularity stats show that it is growing at an amazing rate of 40% every month, which is impressive.
What does the future hold?
The future is ‘Web-Componentization’. React supports it and so we will have cleaner code and better modularization. This will save a lot of time and money for web-based companies, especially in huge projects which are required to be maintained for years.
React is still in its youth, and so has the chance to grow, while Angular’s growth rate is immobile. We will have to wait to see what the future holds…