Este libro presenta los 23 patrones de diseño (design patterns) fundamentales de forma concisa y práctica, ilustrándolos con ejemplos relevantes y rápidos de entender. Cada ejemplo se describe en UML y Java en forma de un pequeño programa, completo y ejecutable. Para cada patrón, el autor detalla su nombre, el problema correspondiente, la solución aportada, sus dominios de aplicación y su estructura genérica. El libro está dirigido a diseñadores y desarrolladores de Programación Orientada a Objetos. Para entenderlo bien, es preferible tener algunos conocimientos de los principales elementos de los diagramas de clases UML y del lenguaje Java. El libro está organizado en 5 partes. En la primera, el autor introduce la noción de patrón de diseño. Las tres partes siguientes detallan cada una de las tres familias de patrones de diseño: patrones de construcción, patrones de estructuración y patrones de comportamiento. Tras estudiar las tres variantes de patrones existentes, mostrando la gran flexibilidad de implementación de estos modelos, la última parte presenta, dentro de un capítulo que enriquece esta nueva edición, la forma de rediseñar el código existente utilizando patrones a través de numerosos ejemplos. También se introduce el patrón compuesto MVC (Model-View-Controller). De este modo, el lector puede percibir fácilmente las cualidades del diseño por patrones. Los ejemplos utilizados en el libro son el resultado de una aplicación de venta de vehículos online y pueden descargarse en el sitio web www.ediciones-eni.com.