In a real-world React application, we will have many stateless React components, but somewhere in our tree of components, a component must be responsible for the management of the application state. This means that we can group them into two main categories:
- Dumb components are also known as presentational components because their only responsibility is to present something to the DOM. Dumb components may be functional stateless components or not.
- Smart components are also known as container components because they are the ones that keep track of states and care about how the app works.
The separation between smart and dumb components can be achieved in many ways, and it is sometimes coupled to some ...