簡介
Memento Pattern(備忘錄模式)是一種行為型設計模式,保存物件的狀態,以便日後還原。
問題
當需要保存物件的歷史狀態,並可隨時還原時。
解決方案
將狀態儲存在備忘錄物件,並由管理者負責保存與還原。
C# 範例
public class Memento {
public string State { get; }
public Memento(string state) { State = state; }
}
public class Originator {
public string State { get; set; }
public Memento Save() => new Memento(State);
public void Restore(Memento m) { State = m.State; }
}
結論
Memento Pattern 讓狀態保存與還原更簡單。