Características del libro
Los patrones de diseño Head first nos dicen qué son los patrones, cómo usarlos y cómo pensar en ellos. Un patrón es una plantilla, una solución universal para un conjunto específico de problemas. Los patrones de diseño son, a su vez, soluciones arquitectónicas de uso común que se pueden utilizar para escribir aplicaciones flexibles y fáciles de usar. Los desarrolladores de todo el mundo resuelven los mismos problemas con los mismos enfoques. Como dice la anotación, si no desea reinventar la rueda, utilice plantillas de diseño (patrones) ya preparadas, con las que este libro está dedicado a trabajar . Por otra parte, cabe destacar la presentación del material: los libros de la serie Head First son famosos por su sencillez y se leen de una sola vez. Los "patrones de diseño" no son una excepción. También se adhiere a los siguientes principios clave:- Visibilidad
- Estilo conversacional de presentación.
- Una gran cantidad de ilustraciones.
- Participación activa del lector.
- Apelar a las emociones
- Captar la atención del lector
Tema principal e idea clave.
"Seguramente alguien ya ha resuelto tu problema" : así comienza el primer capítulo del libro, que transmite todo el significado de los patrones de diseño en la programación. El objetivo principal es transmitir correctamente su significado al lector, porque antes que nada el programador debe saber para qué sirven los patrones y en qué punto deben aplicarse. Básicamente, primero debes ordenar las plantillas en pequeños pedazos en tu cabeza y solo después implementarlas en programas. Si un principiante en programación tiene un buen conocimiento de los patrones, su uso puede complicar enormemente el código (¡pero debería simplificarlo!). A la pregunta "¿Por qué deberían usarse patrones de diseño?" El libro da una respuesta clara: “Conocer conceptos como abstracción, herencia y polimorfismo no te convierte en un buen diseñador OO. Los patrones contienen experiencia comprobada en diseño OO”."Resumen"
El libro está dividido en 14 capítulos más una introducción. Al principio, los autores del libro intentan preparar al lector, sintonizar su cerebro para percibir correctamente la información sobre el diseño de patrones. El primer capítulo explica el principio básico de los patrones y para qué sirven. Uno de los patrones más utilizados, la estrategia, se examina de forma sencilla y discreta. Los capítulos del dos al once están dedicados a un análisis detallado de patrones individuales :- Observador. Distribuye eventos entre objetos que están interesados en su ocurrencia.
- Decorador. Otra mirada a la herencia en Java y a brindar nuevas capacidades a las clases de Java sin modificar el código.
- Fábrica. El patrón salva el código de dependencias no deseadas.
- Soltero. También conocido como Singleton, le permite crear un objeto de clase única para todo el programa.
- Equipo. El patrón le permite encapsular convenientemente una llamada a un método, ampliando sus capacidades.
- Adaptador y Fachada. Resolviendo el problema de incompatibilidad de interfaces, así como empaquetando objetos para simplificar su interfaz.
- Método de plantilla. Encapsulación de bloques algorítmicos, permitiendo que las subclases se asocien con el algoritmo de procesamiento deseado en cualquier momento.
- Iterador y enlazador. El patrón proporciona una herramienta conveniente para iterar a través de colecciones, independientemente de su tipo. Además, el capítulo proporciona información sobre las supercolecciones.
- Estado. Los objetos están dotados de la capacidad de controlar su comportamiento mediante cambios en su estado interno.
- Diputado. Un patrón muy conveniente para controlar el acceso a un objeto.
Ventajas y desventajas
Yo, como muchos de los que estudian en JavaRush, tengo una actitud fría hacia las conferencias aburridas, el material abarrotado y otras violencias contra la psique de un estudiante sediento de conocimiento. En mi opinión, la energía gastada en memorizar textos incomprensibles se gasta mejor en encontrar fuentes alternativas de aprendizaje. Este libro vale la pena dedicarle tiempo y esfuerzo. Un excelente estilo de presentación, un manejo competente de la atención del lector y la repetición de puntos clave forman la principal ventaja de este libro: la facilidad de asimilación del material . Una gran cantidad de ilustraciones es una ventaja adicional. En mi opinión, cada imagen del libro tiene su lugar: todas permiten reforzar las palabras de los autores y obtener una comprensión más profunda de la esencia del material. Como escribí anteriormente, este libro no es un libro de referencia: sus autores no tienen la intención de enumerar todos los patrones. Su principal tarea es facilitar la comprensión y hablar sobre los patrones básicos para que otros, más complejos, sean más fáciles de entender. Y ella lo afronta al 100%. Entre las desventajas está que los patrones de diseño Head first en ruso no son tan fáciles de leer como en inglés. Por supuesto, todo desarrollador debería hablar inglés, pero los programadores novatos no siempre desarrollan esta habilidad hasta el punto de poder leer libros en el original. Sin embargo, esto puede considerarse un inconveniente forzado, ya que el material se presenta con bastante precisión y se conserva el significado.Libros adicionales sobre patrones de diseño.
Soy partidario de la creencia de que es mejor estudiar temas fundamentales de varias fuentes y buscar en ellos un estilo de presentación adecuado. Cuando quieras sumergirte en patrones y leer teoría adicional, créeme, tendrás algo en qué ocupar tus noches.-
Técnicas de diseño orientado a objetos. Patrones de diseño (Gamma E., Helm R., Johnson R., Vlissides J.).
Esta es una publicación más seria, un libro de referencia sobre patrones, un libro muy respetado de la "Banda de los Cuatro". Muchos lo llaman la biblia del diseño OO.
En Internet, las opiniones de los desarrolladores se dividen en 3 bandos:
- algunos argumentan que el libro está desactualizado y el estilo de presentación hace imposible su lectura.
- otros recomiendan utilizar el libro únicamente como libro de referencia sobre patrones, nada más
- Otros dicen que el libro es el santo grial de los patrones de diseño y debería ser leído por cualquiera que quiera convertirse algún día en desarrollador senior de Java.
Importante:Los ejemplos del libro están escritos en C++.
-
JavaEE. Patrones de diseño para profesionales (Murat Yener, Alex Fidom).
Este libro está dedicado al diseño de aplicaciones empresariales: cubre muchos ejemplos de problemas de aplicaciones de la vida real.
-
Patrones de diseño en Java (Grand M.).
El libro demuestra de manera colorida cómo el uso de patrones ahorra tiempo a los desarrolladores, proporciona una descripción general del lenguaje UML y describe 47 patrones de diseño.
Patrones de diseño en JavaRush
En el curso JavaRush, los patrones de diseño se aprenden en el nivel 7 de la misión Colecciones de Java. Las conferencias 1 y 2 están dedicadas a los patrones más comunes, y en la conferencia 4 podrá resolver problemas sobre este tema. A continuación te dejamos algunos artículos interesantes para “fortalecerte”:-
Un artículo general sobre el tema de patrones con categorías, ejemplos, todo lo que nos guste.
-
Dos artículos sobre patrones: descripción general de la parte 1 y parte 2 más detallada .
-
Patrones de diseño utilizando el patrón Singleton como ejemplo .
-
Artículos sobre los patrones “ Estrategia ” y “ Adaptador ”.
-
El concepto de patrones de diseño está relacionado con los diagramas UML, este artículo te ayudará a comprender qué son.
GO TO FULL VERSION