Eu tenho lido sobre o padrão de lembranças de várias fontes da Internet. Informações diferentes de fontes diferentes me deixaram confuso a respeito de por que esse padrão é realmente necessário.
A implementação dofactory diz que a principal intenção desse padrão é restaurar o estado do sistema.
O Wiki diz que a intenção principal é poder restaurar as alterações no sistema. Isso causa um impacto diferente - dizendo que é possível que um sistema tenha implementação de memento sem a necessidade de restauração. E essa capacidade de restauração é uma característica disso.
OODesign diz que
Às vezes, é necessário capturar o estado interno de um objeto em algum momento e ter a capacidade de restaurar o objeto para esse estado mais tarde. Esse caso é útil em caso de erro ou falha.
Então, minha pergunta é por que exatamente usamos este? É para salvar estados anteriores - ou para promover o encapsulamento entre o zelador e o Memento? Por que esse tipo de encapsulamento é tão importante?
Edit: Para quem visita, confira esta Implementação!
Edit : Estou trabalhando na implementação de uma solução de lembrança para o meu problema. Vou postar outra pergunta sobre isso e vincular essa pergunta a esta. Obrigado a todos por responder com sugestões valiosas!
Edit 3 : Aqui está o link para minha implementação de amostra