TAICord TAICord

Quizzes Píldoras Unirse al servidor Login con Discord
← Bloque 3

Principios SOLID

Bloque 3 26/03/2026 · Potro

Principios SOLID

Principio Sigla Nombre Original Descripción del "Mandamiento" Ejemplo de Aplicación
Responsabilidad Única SRP Single Responsibility Principle Una clase debe tener una única razón para cambiar (una sola tarea). Una clase Factura genera la factura, pero otra clase FacturaRepositorio la guarda en la BD.
Abierto / Cerrado OCP Open/Closed Principle Las entidades deben estar abiertas para su extensión, pero cerradas para su modificación. Usar herencia o interfaces para añadir nuevas formas de pago sin tocar el código del ProcesadorDePagos.
Sustitución de Liskov LSP Liskov Substitution Principle Las subclases deben poder sustituir a sus clases base sin alterar el comportamiento del programa. Si Pájaro tiene un método volar(), una clase Avestruz no debería heredar de ella si no puede volar.
Segregación de Interfaces ISP Interface Segregation Principle Es mejor tener muchas interfaces específicas que una sola interfaz generalista "gorda". No obligues a una ImpresoraSencilla a implementar una interfaz Multifuncion con métodos de fax() y escanear().
Inversión de Dependencias DIP Dependency Inversion Principle Depende de abstracciones (interfaces), no de clases concretas (implementaciones). Un Pedido no debe instanciar un ServicioEmail directamente; debe recibir una interfaz IMensajeria.