1. Class Components vs Functional Components
Functional Components
Functional components are also commonly referred to as stateless components.
"The general heuristic I use is to always start with a functional component. If you find out you need lifecycle methods or it makes sense to have a small piece component level state, it’s trivial to refactor to a class component. I find this style of writing components keeps me from getting lazy and forces me to use functional components to their full potential."
React Functional or Class Components: Everything you need to know
https://programmingwithmosh.com/react/react-functional-components/
@todo