In object-oriented computer programming, the term SOLID is a mnemonic acronym for five design principles intended to make software designs more understandable, flexible and maintainable.
These patterns and principles work together and each problem domain will require a different approach and implementation (or no implementation of the principle at all)
- Single responsibility principle (SRP)
- Open/Closed Principle (OCP)
- Liskov substitution principle (LSP)
- Interface segregation principle (ISP)
- Dependency Inversion Principle (DIP)