Memento

Patrón de diseño de comportamiento

Memento 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.

Estructura del patrón de diseño Memento
Estructura del patrón de diseño Memento.

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.
Diagrama de secuencia del patrón Memento
Diagrama de secuencia del patrón Memento.
  1. El Cliente aplica un cambio sobre el Originator.
  2. El Originator crea un nuevo Memento que representa su estado actual.
  3. El Cliente guardar el Memento en el Caretaker para posteriormente poder cambiar entre los estados del Originator.
  4. Después de un tiempo, el Cliente solicita al Caretaker el estado previo del Originator.
  5. 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).

Descubre como el patrón Memento nos ayuda a resolver este problema
Descubre como el patrón Memento 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í 🎉

Acerca de este libro

Introducción a los patrones de diseño

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 libro
Todos los derechos reservados ©
Reactive programming
LinkedinYoutubeTwitterFacebook

© 2021, Copyright - Oscar Blancarte. All rights reserved.