重複の可能性:
元に戻すエンジンのデザインパターン
一般に、アプリケーションで「元に戻す」機能をサポートするにはどうすればよいですか?私はWebアプリとデスクトップアプリの両方で作業しており、私が作成した「元に戻す」システムに本当に慣れていることはありません。
Mementoパターン を確認してください。
私はメメントよりもコマンドパターンを支持して投票します。 Mementoパターンは、元に戻す/やり直し機能のコマンドパターンよりもはるかにコストがかかります。
オブジェクトの状態をキャプチャして復元することは、互換性のあるオブジェクトに対してアクションを実行したり元に戻したりするのに比べて、非常にコストがかかります。