SOLID

Set of five principles for software development, preached by Uncle Bob (Robert C Martin).

Single responsibility

Open-closed

Liskov substitution

Interface segregation

Dependency inversion