Estoy interesado en aprender patrones de diseño y me gustaría saber qué se consideran libros de primer nivel para aprender este tema.
¿Existe algún libro que sea el estándar de facto para describir las mejores prácticas, metodologías de diseño y otra información útil sobre patrones de diseño? ¿Qué hay de ese libro que lo hace especial?
design-patterns
books
mW00t
fuente
fuente
Respuestas:
Patrones de diseño: los elementos del software orientado a objetos reutilizables se acercan mucho a mi definición de libro canónico sobre patrones de diseño. Según su artículo de Wikipedia (énfasis mío):
Ward Cunningham , un pionero de los patrones de diseño, mantiene un catálogo en línea de los patrones del libro en WikiWikiWeb . Y de acuerdo con el artículo de Wikipedia sobre el patrón de diseño (nuevamente, el énfasis es mío):
Hay muchos otros libros a los que se hace referencia en el mismo artículo como notables en el género:
De los que he leído el libro de Fowler, es muy influyente y una buena lectura. En ciertos puntos es un poco vago para mi gusto, pero en general es un libro agradable. Hay un catálogo en línea de los patrones incluidos en el libro, con descripciones mínimas.
También he hojeado los Patrones de diseño de Head First, y si has leído cualquier otro libro de la serie Head First, es de la misma alta calidad y tan agradable como la mayoría de los libros de la serie :
El término "patrón de diseño" es algo vago, ya que cada solución reutilizable general puede considerarse un patrón de diseño. Siempre he notado una tendencia a aplicar la etiqueta en las soluciones descritas en uno de los libros notables que he enumerado anteriormente, y más específicamente en los libros Gang of Four y Fowler. Los patrones de diseño no siguen un proceso de desarrollo único, son soluciones de software normales que resultan ser inmensamente reutilizables y son extremadamente difíciles de identificar .
Pero si compara los catálogos en línea de ambos libros con el contenido de libros específicos del idioma, notará que a menudo se usan como plantillas. Entonces diría que ambos libros están muy cerca de ser referencias canónicas, siendo el libro GoF el más importante desde una perspectiva histórica, a pesar de que ambos libros están limitados a la programación orientada a objetos .
fuente
El libro The Gang of Four - Patrones de diseño: elementos de software orientado a objetos reutilizables es probablemente lo más parecido que tenemos a un estándar de la industria en patrones de diseño.
Para una introducción más accesible, Head First: Design Patterns también es bueno. No se desanime por la portada 'de moda', ya que es una buena lectura y probablemente lo ayudará a comprender los conceptos en el libro GoF mucho más fácil si lo lee primero.
fuente
fuente
Sí, hay un libro bien conocido sobre patrones de diseño: Patrones de diseño: elementos de software orientado a objetos reutilizables y los autores a menudo se llaman "la banda de los cuatro" (GoF) y se hace referencia en casi todos los textos sobre patrones de diseño.
fuente
Patrones de diseño: elementos de software reutilizable orientado a objetos.
De wikipedia :
fuente
Uno de los mejores sitios web de patrones de diseño es Ward's Wiki, el primer wiki. Consulte http://c2.com/cgi/wiki?HistoryOfPatterns para obtener una buena página de inicio.
fuente
Creo que Refactoring to Patterns puede ser útil simplemente porque describe cómo ciertos diseños / códigos se pueden refactorizar hacia patrones en el libro GoF. Esto puede ayudar a superar la curva de aprendizaje inicial. Ah, y también contempla 'Pattern-happiness' :)
También puede encontrar los primeros tres volúmenes de Arquitectura de software orientada a patrones como una buena lectura.
fuente
Patrones de diseño
Este sitio tutorial contiene las siguientes subsecciones
Este sitio también contiene una guía sobre Anti Patterns, UML y Refactoring.
fuente
El libro original, "Patrones de diseño: elementos de software orientado a objetos reutilizables" es un buen recurso para patrones de diseño orientados a objetos.
Existen muchos otros libros por ahí. Cuando necesito una referencia rápida y mi libro GoF está fuera de alcance, Wikipedia normalmente tiene suficiente información sobre esos y otros patrones de diseño.
Esos son los principales que uso. También se debe tener en cuenta que las personas han comenzado a aplicar el formato del patrón a otras cosas, como la gestión de proyectos.
Si desea saber acerca de los antipatrones, que debe tener en cuenta, hay dos libros, "AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis", así como "Refactoring: Mejorando el diseño de código existente" que tiene una sección sobre olores de código, otro nombre para antipatrones.
fuente
"Principios ágiles, patrones y prácticas en C #" por Robert C. Martin. Creo que también tiene una versión Java del libro.
Además, no es un patrón en sí mismo, pero el diseño impulsado por dominio tiene algunos conceptos excelentes, incluso si no opta por el enfoque DDD completo.
fuente
Si está interesado específicamente en los patrones de diseño en C ++, pruebe Modern C ++ Design de Andrei Alexandrescu.
Este libro habla sobre cómo implementar patrones de uso común como Factory, Singleton y Visitor en C ++. También habla sobre temas muy específicos de C ++, como punteros inteligentes, metaprogramación de plantillas y diseño de clases basado en políticas.
El autor del libro es un experto autorizado , conocido por su
fuente