SOLID (Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion)
These principles help developers create code that is easy to extend and maintain, by encouraging the creation of classes that have a single responsibility and are loosely coupled.
This principle encourages developers to write simple code that is easy to understand and maintain. By keeping code simple, developers can reduce the risk of introducing bugs, improve the readability of the code, and make it easier for other developers to work with.
This principle encourages developers to avoid creating abstractions too early in the development process. By waiting until the requirements of the system are better understood, developers can create abstractions that are more likely to be useful and maintainable.