Todo lo que acabas de ver en este artículo es solo una pequeña parte del libro Introducción a los patrones de diseño, el libro más completo de patrones de diseño en español, abarcamos 25 patrones de diseño junto con 25 proyectos del mundo real. Olvídate de aprender patrones de diseño con los ejemplos típicos de Internet de cómo hacer una pizza, animales y figuras geométricas. te invito a que veas mi libro:
Ver libroMemento
Patrón de diseño de comportamientoMemento es un patrón diseñado que nos permite capturar el estado de un objeto en un momento determinado con la finalidad de regresar a este estado en cualquier momento. Este patrón es utilizado cuando tenemos objetos que cambian en el tiempo y por alguna razón necesitamos restaurar su estado en un momento determinado.
Los componentes del patrón se explican a continuación:
- Client: Componente que afecta al Originator y registra el nuevo estado con el Caretaker. En otras palabras, es quien realiza el cambio sobre el objeto y registra el estado.
- Originator: Es el componente que cambia de estado.
- Memento: Componente que almacena el estado del Originator en un momento determinado.
- Caretaker: Componente que registra los cambios del Originator. Este componente nos permite viajar entre los distintos estados del Originator.
- El Cliente aplica un cambio sobre el Originator.
- El Originator crea un nuevo Memento que representa su estado actual.
- El Cliente guardar el Memento en el Caretaker para posteriormente poder cambiar entre los estados del Originator.
- Después de un tiempo, el Cliente solicita al Caretaker el estado previo del Originator.
- El Cliente restaura el estado del Originator mediante el Memento obtenido del Caretaker .
Ejemplo del mundo real
Mediante la implementación del patrón de diseño Memento desarrollaremos una simple pero efectiva aplicación que nos permita capturar los datos de un empleado. Una vez guardemos los datos, la aplicación nos permitirá regresar entre las diferentes versiones almacenadas en el patrón Memento, como si fuera una opción de hacer (Ctrl + Y) y deshacer (Ctrl + Z).
¿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.