How will you improve the performance of a React Application?

Keeping component state local where necessary. Memoizing React components to prevent unnecessary re-renders. Code-splitting in React using dynamic import() Windowing or list virtualization in React. Lazy loading images in React.

What are the different ways to manage a state in a React application?

How does prototypical inheritance work?

Why you do not set the state directly in React. For example, if you have `const [products, setProducts] = useState([])`. Why you do not set `products = [...]` instead, you use the `setProducts`

You have an array of products. Each product has a name, price, description, etc. How will you implement a search to find products by name?

What is a unit test? Why should write unit tests?