What is React?
ReactJS is not a framework, it is just a library developed by Facebook and a large community of developers.
It's used by many big, well-known businesses (like Facebook, Netflix, Instagram, Code Academy and Airbnb)
React initial version, 0.3.0 was released on May, 2013 and the latest version, V18.0.0 is released on April 2022.
ReactJS is a Model-View-Controller (MVC) architecture-based library
React creates a VIRTUAL DOM in memory.
Why use ReactJS?
Fast Performance: To develop UI (User Interfaces)/ FrontEnd that enhance the speed and performance of applications by using virtual DOM.
Component Based: ReactJS uses a number of components to construct an application. Because of their independence and internal logic, these components can be used again and again during the development process. The development time of the application will be greatly decreased as a result.
Flexible: As there are no hard and fast rules for code standards in React, developers and teams are free to choose the conventions that work best for them and implement them anyway they see right.
Mobile Applications Support: React Native allows React to create mobile applications as well. React Native is an open-source UI software framework that is derived from React itself.
Easy Debugging: React supports unidirectional data flow, i.e. that child components are nested inside parent components when creating an application. As the data flows is in a single direction, it gets easier to debug errors and spot the bugs.
VIRTUAL DOM: React creates a VIRTUAL DOM in memory. Rather than working directly with the browser's DOM, React builds a virtual DOM in memory and performs all required manipulations there before updating the browser's DOM.
One-way Data Binding: One-way data binding gives you better view over your application.
Component: A Component is one of the core building blocks of React. Every application you will develop in React will be made up of pieces called components. Components make the task of building UIs much easier.
React is fast. Apps made in React can handle complex updates and still feel quick and responsive.
React is scalable. Large programs that display a lot of changing data are where React performs best.
React is flexible. You can use React for interesting projects that have nothing to do with making a web app. People are still figuring out React’s potential. There’s room to explore.
React is popular. While this reason has admittedly little to do with React’s quality, the truth is that understanding React will make you more employable.
Instead than focusing on the browser, it targets mobile platforms.