What is React?

Last Updated: October 9, 2021

React is a javascript library that is used to build user interfaces. You can make reusable components that can display data and data can be changed over time without reloading the page. React was created at Facebook and Instagram on 2013

React Native enables you to create native mobile applications

React Developer Tools
You can find some useful developer tools for React development

Firefox developer tool allows you to inspect a React tree, including the component hierarchy, props, state, and more.
https://addons.mozilla.org/en-US/firefox/addon/react-devtools/

You can find another development tool that can be used in your Google Chrome

Speed Rendering with React
When you develop a modern web application like single page application you have to pay attention to DOM manipulation.

In most Javascript applications, this DOM manipulation is very slow. This happens when you update the DOM with changes. This is even worst when some JS applications update DOM much more than they have to

You can understand it with the following example
In your application, you have ordered list to show the names of persons. Now you want to change the last item of the list with a new name. What normal Javascript does is, building the entire list with changes. So this is ten times more work though it needs to change at one location

This kind of inefficient update leads to serious issues when you deal with applications with large DOM

React can overcome this issue with Virtual DOM

What is Virtual DOM?

When you develop React app every DOM Object has an identical Virtual DOM Object. This Virtual DOM object is a lightweight copy of the real DOM Object

Virtual DOM has the all properties that you find in DOM but it does not have some features needed to draw on screen.
You can manipulate the Virtual DOM faster than DOM because Virtual DOM has nothing to draw on screen