Qual è la classe "Memento" per il modello di progettazione Memento?

8

Nel schema di progettazione "Memento" della Gang of Four, la classe Memento si presenta come un involucro inutile che non in realtà mi forniscono alcun valore.

A cosa serve? C'è qualche ragione per cui non puoi semplicemente passare attorno all'oggetto String (nell'esempio di Wikipedia)?

    
posta Jonas H. 05.08.2012 - 20:54
fonte

1 risposta

11

La classe Memento è quella che contiene i diversi stati con cui hai a che fare nel tuo oggetto - è ciò che abilita la funzionalità "annulla / ripristina".

L'esempio a cui ti sei collegato su Wikipedia è piuttosto semplicistico, dove lo "stato" è solo un valore stringa. Considera che lo stato potrebbe essere un insieme di proprietà che potresti voler ripristinare in "batch" e forse avere diversi punti "annulla" con.

    
risposta data 05.08.2012 - 20:57
fonte

Leggi altre domande sui tag