Los principios SOLID son una serie de buenas prácticas en el desarrollo orientado a objetos que se deben tener en cuenta durante el diseño de software. Estos principios fueron agrupados en el acrónimo SOLID por Robert Martin y son la base para entender y usar los patrones de diseño que harán que nuestro software tenga un bajo acoplamiento y una alta cohesión.
- S - Single Responsability Principle (Principio de responsabilidad única)]
- O - Open/Closed Principle (Principio Abierto/Cerrado)
- L - Liskov Substitution Principle (Principio de sustitución de Liskov)
- I - Interface Segregation Principle (Principio de segregación de interfaces)
- D - Dependency Inversion Principle (Principio de inversión de dependencias)
Los patrones de diseño son soluciones habituales a problemas que ocurren con frecuencia en el diseño de software. Son como planos prefabricados que se pueden personalizar para resolver un problema de diseño recurrente en tu código.
No se puede elegir un patrón y copiarlo en el programa como si se tratara de funciones o bibliotecas ya preparadas. El patrón no es una porción específica de código, sino un concepto general para resolver un problema particular. Puedes seguir los detalles del patrón e implementar una solución que encaje con las realidades de tu propio programa.
Los patrones de diseño varían en su complejidad, nivel de detalle y escala de aplicabilidad al sistema completo que se diseña. Los patrones pueden clasificarse por su propósito:
-
Los patrones creacionales proporcionan mecanismos de creación de objetos que incrementan la flexibilidad y la reutilización de código existente.
-
Los patrones estructurales explican cómo ensamblar objetos y clases en estructuras más grandes a la vez que se mantiene la flexibilidad y eficiencia de la estructura.
-
Los patrones de comportamiento se encargan de una comunicación efectiva y la asignación de responsabilidades entre objetos.