This is the ‘S’ in SOLID
Responsibility’s can be stated as “a reason to change”, multiple small interfaces (interface-segregation principle ISP) can help to achieve SRP.
SRP is also related to the concept of ‘Separation Of Concerns‘
There should never be more than one reason for a class to change.
The Single Responsibility Principle states that every object should have a single responsibility, and that responsibility should be entirely encapsulated by the class.
- Cohesion is how strongly related & focused the responsibilities of a module are
- Coupling is the degree to which each program module relies on each other
The goal would be to have low coupling and high cohesion.