📝Smart/dumb components (Container/View)
The idea of smart/dumb components is to separate all frontend components into two classes: smart or dumb (containers or views).
Dumb components (views) are purely presentational/UI components. They receive all their data via props and trigger events. They must not interact with server, fetch data, or execute domain logic. Dumb components may contain presentational state.
Smart components (containers) handle all the logic: fetching data, triggering data update on server, data transformation if needed. They fetch/transform data, pass it to dumb components, and react to dumb components’ events.