Patron Memento

Preview:

DESCRIPTION

Patron de diseño de comportamiento momento para la programación orientada a objetos

Citation preview

Patrón Memento

Modelos de Programación I

Docente:

Julio Barón Velandia

Integrantes:

María Fernanda García Murcia– 20131020053

Santiago Alfonso Casallas - 20132020081

Agenda

Descripción Aplicación Estructura(UML) Ejemplo Ventajas y desventajas Conclusiones Bibliografía

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Aplicaciones

Se usa este patrón cuando:

Para guardar una colección de estados sucesivos que puede tener un objeto y poder luego restaurar el objeto a un estado previo.

También es usado cuando se facilita el “hacer” y “deshacer” de determinadas operaciones .

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Descripción

Es un patrón de comportamiento.

Se utiliza para guardar el estado de un objeto y poder luego recuperarlo sin perder el encapsulamiento del objeto.

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Estructura (UML)

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Ejemplo (Código)

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Ventajas y Desventajas

El patrón oculta a otros objetos las interioridades, potencialmente complejas, del Originador, preservando así los límites de la encapsulación.

El uso de mementos puede ser costoso. Los mementos podrían producir un coste considerable si el Originador debe copiar grandes cantidades de información para guardarlas en el memento o si los clientes crean y devuelven mementos a su creador con mucha frecuencia.

Si el originador tiene que almacenar y mantener a salvo una o muchas copias de su estado interno, sus responsabilidades crecerían y sería inmanejable.

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Conclusiones

Guardar el estado de un Objeto sin romper el encapsulamiento del mismo.

Usar frecuentemente este patrón para almacenar estados internos de objetos de gran tamaño, podría resultar costoso y perjudicar el rendimiento de la aplicación.

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación

Bibliografía

Marqués Corra, I José Manuel; Maudes Raedo, Jesús Manuel; García Peñalvo, Francisco José. Análisis y Diseño Orientado al Objeto para Reutilización. Versión 2.1.1 (Octubre de 1997), p.38

Universidad Distrital Francisco José de Caldas - Facultad de Ingeniería - Ingeniería de Sistemas - Modelos de Programación