While node.js and Angular provide huge levels of customisation for complex applications, it’s React’s flexibility and ability to use third-party libraries that have made it popular. While as a lightweight framework with precise third-party libraries means that you can make your applications do just what you want with less complexity, the reliance on third-party sources can be a double-edged sword – if they’re not kept updated, then your build can fail, and without centralisation there’s less predictability when it comes to future support.
React is already popular with many of the big tech companies, including Netflix, Yahoo, Instagram, and Microsoft, because of its ease of use, and great data handling ability. Many applications don’t need more than a lightweight framework to get a job done, and from real-time communication to browser-based games a simple solution is often an advantage. Its popularity has also driven many useful tools for implementing React in different environments and iteration, such as Storybook https://storybook.js.org/, a UI development environment, and React Native https://facebook.github.io/react-native/, a further development by Facebook to apply the React architecture to native Android, iOS, and UWP applications. A survey earlier this year found that over 78% of open positions requiring framework knowledge worldwide required React expertise.
The major competitors to React, Angular and Vue, also have their pros and cons. Angular has been around longer than React, and so has more documentation and a larger knowledgebase to call on. It is somewhat modular, and tends to lean more towards functionality with larger, more complex projects. However, the syntax and migration from previous issues can be complex, which can cause problems without significant expertise invested in the process. As a more heavyweight solution than React, Angular tends to require a more in-depth approach.
Vue is another new framework, launched relatively recently. It has detailed documentation, although, as it was developed in China, translation is ongoing; it’s adaptable, with rapid switching between frameworks owing to similarity to Angular and React when it comes to design and architecture; it’s scalable, with easy integration between small and large parts without badly affecting the entire system; it’s very lightweight, which keeps speed and flexibility at a premium. While it currently has a small market share in comparison to React or Angular, and so has related issues when it comes to community and knowledge-sharing, it’s definitely growing, and has already been picked up by some major players.
React has grown rapidly in the last few years, and its popularity is only increasing. With development trends heading towards lightweight, bespoke multi-platform solutions, it’s certainly here to stay, and has matured enough to have a large community and knowledge base available for developers. It ranks highly on the list of sought-after frameworks, and is certainly a good framework to learn in 2018.