Those are design principles to always keep in mind when coding to make better software. They make software more maintainable, flexible, and testable.
Single Responsibility Principle
This is about the separation of concerns. A class should only have a single responsibility.
Another way to define this is that “a class or module should have one, and only one, reason to be changed”, this is because the class is supposed to have, as mentioned, only one responsibility. …
Coding iOS. Software developer, Ms Computer and Information Sciences.