Name:
Introducción a los patrones de diseño
Brief Synopsis:
Introducción a los patrones de diseño es el libro más completo en Español, que aborda los patrones mediante ejemplos reales, que pueden ser aplicados en el mundo real.
Long Synopsis:

Hoy en día aprender patrones de diseño no es una cualidad más,si no una obligación. Y es que estudiar y comprender los patrones de diseño nos convierte en un mejor programador/arquitecto y es clave para conseguir una mejor posición en el mundo laboral. Este libro fue creado con la intención de enseñar a sus lectores cómo utilizar los patrones de diseño de una formaclara y simpledesde un enfoque práctico y con escenarios del mundo real. Tengo que aceptar que este no es un libro convencional de patrones de diseño debido, principalmente, a que no sigue la misma estructura de las primordiales obras relacionadas con este tema. En su lugar, me quise enfocar en ofrecer unaperspectiva del mundo real, en donde el lector pueda aprender a utilizar los patrones de diseño en entornos reales y que puedan ser aplicados a proyectos reales. Cuando empecé a estudiar sobre patrones de diseño, me di cuenta que siempre se explicaban en escenarios irracionales que poco o ninguna vez podrías utilizar, como por ejemplo para aprender a crear figuras geométricas, hacer una pizza o crear una serie de clases de animales que ladren o maúllen; esos eran los ejemplos que siempre encontraba, que si bien explicaban el concepto, se complicaba entender cómo llevarlos a escenarios reales. En este libro trato de ir un poco más allá de losejemplos típicospara crear cosasrealmente increíbles. Por ejemplo:

Portada:
cover art: red horse, city in background
Book Quality:
Publisher Quality
Book Size:
600 Pages
ISBN-10:
1539619214
Publisher:
Date of Addition:
10/10/2016
Copyright Date:
2016
Copyrighted By:
Oscar Javier Blancarte Iturralde
Adult content:
No
Language:
Español
Essential Images:
170
Described Images:
170
Categories:
Patrones de diseño
Grade Levels:
University
Submitted By:
Oscar Javier Blancarte Iturralde

Abstract Factory

Patrón creacional

El patrón de diseño Abstract Factory busca agrupar un conjunto de clases que tiene un funcionamiento en común llamadas familias, las cuales son creadas mediante un Factory, este patrón es especialmente útil cuando requerimos tener ciertas familias de clases para resolver un problema, sin embargo, puede que se requieran crear implementaciones paralelas de estas clases para resolver el mismo problema pero con una implementación distinta.

Estructura del patrón de diseño Abstract Factory.

La estructura de Abstract Factory puede resultar muy enredosa ya que tiene muchos componentes y éstos aparentemente se mezclan entre sí. Para comprender mejor cómo funciona este patrón explicaremos cada componente:

  • Client: Representa la persona o evento que dispara la ejecución del patrón.
  • AbstractProduct (A, B): Interfaces que definen la estructura de los objetos para crear familias.
  • ConcreteProduct (A, B): Clases que heredan de AbstractProduct con el fin de implementar familias de objetos concretos.
  • ConcreteFactory: Representan las fábricas concretas que servirán para crear las instancias de todas las clases de la familia. En esta clase debe existir un método para crear cada una de las clases de la familia.
  • AbstractFactory: Define la estructura de las fábricas y deben proporcionar un método para cada clase de la familia.
Diagrama de secuencia del patrón Abstract Factory.
  1. El cliente solicita la creación del ConcreteFactory1 al AbstractFactory .
  2. El AbstractFactory crea una instancia del ConcreteFactory1 y la regresa.
  3. El cliente le solicita al ConcreteFactory1 la creación de un ProductA .
  4. El ConcreteFactory1 crea una instancia del ProductA1 el cual es parte de la familia1 y lo regresa.
  5. El cliente esta vez solicita la creación del ConcreteFactory2 al AbstractFactory .
  6. El AbstractFactory crea una instancia del ConcreteFactory2 .
  7. El cliente le solicita al ConcreteFactory2 la creación de un ProductA .
  8. El ConcreteFactory2 crea una instancia del ProductA2 el cual es parte de la familia2 y lo regresa.

Ejemplo del mundo real

Mediante la implementación del patrón de diseño Abstract Factory desarrollaremos una aplicación que permite la comunicación con el Back End mediante Web Services y servicios REST, de tal forma que nuestro cliente pueda elegir mediante configuración el tipo de comunicación que se utilizará.

Descubre como el patrón Abstract Factory nos ayuda a resolver este problema.


¿Sabes la importancia de los patrones de diseño?

Los patrones de diseño son la clave para crecer profesionalmente hacia la arquitectura de software, sin mencionar que los salarios son los más altos de la industria de IT, descúbrelo en este video.

🎉 Este video es parte del curso de patrones de diseño, inscríbete aquí 🎉