SOLID principles
Solid principles are a way, a set of recommendations and principles, to build robust software. SOLID principles work for object-oriented design (OOP). Their author is Robert C. Martin and date from around 2000.
A quick overview
| Character | Principle Name | Explanation |
|---|---|---|
S |
Single responsibility principle | Each class has just one responsibility. |
O |
Open/Closed principle | The functionality of a class can be extended without modifying it. |
L |
Liskov substitution principle | Classes must be fully substitutable by their descendants. |
I |
Interface segregation principle | Use small and narrowly focused interfaces. |
D |
Dependency inversion principle | Depend on abstractions, not on implementations. |