Coupling measures how much one module depends on another; cohesion measures how strongly the parts inside a module belong together. The goal: low coupling, high cohesion.
The two axes
text
HIGH cohesion → a class does ONE well-defined job, parts relate strongly ✅
LOW coupling → modules interact through small, stable interfaces ✅
Low cohesion (bad) vs. high cohesion (good)
python
:
(): ...
(): ...
(): ...
: ...
: ...
: ...
