La D de SOLID se refiere al principio de inversión de dependencia o DIP por sus siglas en inglés (Dependency Inversion Principle). Se puede resumir con que una clase debe depender de las abstracciones, no de las concreciones. Aunque Robert C. Martin es mucho más específico y realiza una definición dividida en dos partes
La I de SOLID se refiere al principio de segregación de interfaz o ISP por sus siglas en inglés (Interface Segregation Principle). Se puede definir como que muchas interfaces específicas son mejores que una interfaz de propósito general. O como diría Robert C. Martin, “los clientes no deben ser forzados a depender de interfaces que no utilizan”
La L de SOLID se refiere al principio de sustitución de Liskov o LSP por sus siglas en inglés (Liskov Substitution Principle). Se puede definir como que cada clase que hereda de otra puede usarse como su padre sin necesidad de conocer las diferencias entre ellas. Una definición muy compleja para un concepto mucho más simple. Pero con una historia algo truculenta detrás
La O de SOLID se refiere al principio de abierto/cerrado, OCP por sus siglas en inglés (Open/Closed Principle). Se puede definir como que una clase debe estar abierta a la extensión y cerrada a la modificación. Fue acuñado por primera vez por Bertrand Meyer. Pero no fue hasta que Robert C. Martin lo reformuló e introdujo dentro del acrónimo SOLID, que se popularizó
La S de SOLID se refiere al principio de responsabilidad única o SRP por sus siglas en inglés (Single Responsibility Principle). Se puede definir como que una clase debe tener una sola responsabilidad, o como diría Robert C. Martin, “una clase debe tener solo una razón para cambiar”