He estado leyendo sobre el patrón de recuerdo de varias fuentes de Internet. La información diferente de diferentes fuentes me ha dejado confundido sobre por qué este patrón es realmente necesario.
La implementación dofactory dice que la intención principal de este patrón es restaurar el estado del sistema.
Wiki dice que la intención principal es poder restaurar los cambios en el sistema. Esto tiene un impacto diferente: decir que es posible que un sistema tenga una implementación de memoria sin necesidad de restaurar. Y esa capacidad de restauración es una característica de esto.
OODesign dice que
A veces es necesario capturar el estado interno de un objeto en algún momento y tener la capacidad de restaurar el objeto a ese estado más adelante en el tiempo. Tal caso es útil en caso de error o falla.
Entonces, mi pregunta es ¿por qué exactamente usamos este? ¿Es para salvar estados anteriores o para promover la encapsulación entre el Guardián y el Recuerdo? ¿Por qué es este tipo de encapsulación tan importante?
Editar: Para aquellos que visiten, ¡revisen esta Implementación!
Editar : estoy trabajando en la implementación de una solución de recuerdo a mi problema. Publicaré otra pregunta al respecto y vincularé esa pregunta a esta. ¡Gracias a todos por responder con valiosas sugerencias!
Edición 3 : Aquí está el enlace a mi implementación de muestra