Los patrones de diseño son soluciones probadas y reutilizables a problemas recurrentes dentro dentro del diseño del software. Estos NO son un código listo para copiar y pegar, sino que más bien, son soluciones a un alto nivel, una especie de plantilla conceptual que permiten tener un código más mantenible, escalable y fácil de entender.
Según Refactorin Guru los patrones de diseño son un conjunto de herramientas que nos preparan para resolver problemas recurrentes y nos dan un lenguaje común para comunicarnos dentro del equipo de manera efectiva.
Uno de los primeros libros en tratar el tema fue Design Patterns Elements of Reusable Object-Oriented Software creado por GoF donde se dan a conocer 23 patrones que resuelven 23 problemas comunes.
Los patrones de diseño nos permite escribir código utilizando las mejores prácticas para que este sea estructurado, administrable y escalable ver más....
Los patrones de arquitectura son los más universales, son soluciones a alto nivel aplicadas en cualquier lenguaje de programación que permita la orientación a objetos. Adicionalmente, estos patrones son categorizados según su intención y proposito en los siguientes grupos: Patrones Creacionales, Patrones Estructurales, Patrones de Comportamiento
-
Patrones Creacionales: Estos patrones proveen mecanismos para la creacion de objetos de manera eficiente, desacoplando la creación de objetos de nuestro código. ver más...
-
Patrones Estructurales: Estos patrones nos enseñan como organizar y componer clases u objetos para formar sistemas complejos de manera sencilla. ver más...
-
Patrones de Comportamiento: Estos patrones se encargan de cómo se comunican, interactuan y se dividen responsabilidades los objetos. ver más...