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