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

Flyweight

Patrón Estructural

Flyweight es un patrón que centra su atención en la construcción de objetos ligeros, mediante la abstracción de las partes reutilizables que pueden ser compartidas con otros objetos, esto con el fin de que en lugar de crear objetos cada vez que sea requerido, podamos reutilizar objetos creados por otras instancias logrando con ello reducir en gran medida la capacidad de memoria requerida por la aplicación.

Este patrón es utilizado cuando la optimización de los recursos es algo primordial ya que elimina la redundancia de objetos con propiedades idénticas.

Estructura del patrón Flyweight.

Los componentes que conforman el patrón son:

  • Client: Objeto que dispara la ejecución.
  • FlyweightFactory: Fábrica que utilizaremos para crear los objetos Flyweight u objetos ligeros.
  • Flyweight: Corresponde a los objetos que deseamos reutilizar con el fin de que nuestros objetos sean más ligeros.
Diagrama de secuencia del patrón Flyweight.
  1. El cliente solicita al Factory la creación de un objeto Flyweight.
  2. El Factory antes de crear el objeto, valida si ya existe un objeto idéntico al que se le está solicitando. De ser así, regresa el objeto existente; de no existir, crea el nuevo objeto y lo almacena en caché para ser reutilizado más adelante.
  3. El objeto Flyweight se crea o es tomado del caché y es devuelto al cliente.

Ejemplo del mundo real

Mediante la implementación del patrón de diseño Flyweight crearemos una aplicación que administre listas de reproducción, las cuales esta conformados por canciones que son compartidas por todas las listas de reproducción. Además, las canciones tienen secciones compartidas para mejorar la cantidad de memoria utilizada.

Descubre como el patrón Flyweight 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í 🎉