Why React.js is my favorite?

Shariful Pradhan Hridoy
3 min readMay 6, 2021
  1. It's easy to learn and easy to explore.

Yes, React.js is easy to learn. Within just 1 week of study, you can make an entire website without any big programming language knowledge. It easy to use, easy to set up, and easy to adopt than any other JavaScript Framework. I started learning to react with my programming guru Jhankhar Mahbub. JavaScript always too hard for a beginner like me. I started thinking am I really going to able to build a website after finishing the course with him. But when started with React, every day I feel like this is something I am looking for a long time. Now today I can build a website, connect it with a database, and also I can make it totally responsive and dynamic.

2. The Fundamentals of React

Before we begin, we have to read this article no matter you understand at least 40% or not. You have to read it and finish it to the end.

3. Core Concepts of React

Yes, we need to start with the core topics. So that we can have the fundamentals and core functionality knowledge of React. In the rest of this article, I will give a short overview of all the core concepts of React.

4. Virtual DOM

It’s the most asked interview question how virtual DOM works? Yes If you are looking for a react developer job. You must know what is Virtual DOM. Virtual DOM tries to minimize the rendering stages for getting a better performance for a big complex app. React use virtual DOM to optimize and enhance its performance. It uses the observable to detect state and prop changes. React uses an efficient diff algorithm to compare the versions of virtual DOM.

5. JSX

JSX is a syntax extension to JavaScript. JSX allows writing HTML directly into the React Component. To build UI logic we have to use JSX for a better coding experience. React doesn't require using JSX, but most coders find it helpful as visual aid when working with UI inside the JavaScript environment.

6. DefaultProps

A property on the component class itself called defaultProps. To set default props for the class, this is used for undefined props, but not for null props. You can define default values for your props by assigning to the special defaultProps property:

// With JSX
function ReactHeader(props) {
return <h1>React {props.version || 16} Documentation</h1>
}

// OR
// Without JSX
function ReactHeader(props) {
return React.createElement('h1', null, `React ${props.version || 16} Documentation`);
}

7. PropTypes

Props and PropTypes are important mechanisms for passing read-only attributes between React components. React props, which stands for “properties,” are used to send data from one component to another. If a component receives the wrong type of props, it can lead to bugs and unexpected errors in your app. So it is very important to understand the PropTypes in React.

8. Optimizing Performance

React always use several clever techniques to minimize the number of costly DOM operations required to update the UI. For many applications, using React will lead to a fast user interface without doing much work to specifically optimize for performance. So for optimizing performance React includes many helpful warnings. And this warning are very useful in deveopment.

9. React is not a framework

Angular and Vue is a JavaScript Framework. Because they already set up almost everything and you just need to know the uses of them. You can’t make all decisions by using these frameworks. But React is a JavaScript library and you need to make all decisions by yourself. It helps you to build user interface components.

10. The Intro of the React

last not least React is a declarative, efficient, and flexible JavaScript library for building user interfaces. It lets you compose complex UIs from small and isolated pieces of code called “components”.

This is how you can easily start the learning process for React. Just learn the fundamentals and start a React project ASAP. All the best to everyone.

--

--

Shariful Pradhan Hridoy

My name is Shariful Pradhan Hridoy. I am a Web Developer, and I'm very passionate and dedicated to my work. With wide experience as a React Web developer.