Single Responsibility (SRP), Open/Close, Liskov's Substitution, Interface Segregation, and Dependency Inversion. Five agile principles that should guide you every time you write code. The Definition A class should have only one reason to change. Defined by Robert C. Martin in his book Agile Software Development, Principles, Patterns, and Practices and later republished in the C# version of the boo
![SOLID: Part 1 - The Single Responsibility Principle | Envato Tuts+](https://cdn-ak-scissors.b.st-hatena.com/image/square/136de12bc8a420b419f5ba741e084fc57ab6a99a/height=288;version=1;width=512/https%3A%2F%2Fcms-assets.tutsplus.com%2Fuploads%2Fusers%2F30%2Fposts%2F19098%2Fpreview_image%2F1-SRP-retina.png)