Definición Single-Responsibility Open-closed Liskov substitution Interface segregation Dependency inversion