***
This principle states that **a class should only have one responsibility, or one reason to change**; used by a single user role.
How does this principle help us to build better software?
Let's see a few of its benefits:
1. **Testing** – A class with one responsibility will have far fewer test cases.
2. **Lower coupling** – Less functionality in a single class will have fewer dependencies.
3. **Organization** – Smaller, well-organized classes are easier to search than monolithic ones.
***
**References**:
- [A Solid Guide to SOLID Principles](https://www.baeldung.com/solid-principles#s)