概念的な例
この例は、 Memento デザインパターンの構造を説明するためのものです。 以下の質問に答えることを目的としています:
- どういうクラスからできているか?
- それぞれのクラスの役割は?
- パターンの要素同士はどう関係しているのか?
ここでパターンの構造を学んだ後だと、 これに続く、 現実世界の PHP でのユースケースが理解しやすくなります。
index.php: 概念的な例
Output.txt: 実行結果
現実的な例
ほとんどの PHP スクリプトは、 単一スレッドで、 非常に限られたセッション時間で動作するため、 オブジェクトの状態は、 RAM よりもっと永続的な記憶装置に保存する必要があります。 普通は、 シリアライゼーションでスナップショットを作成することで十分です。 というわけで、 PHP アプリケーションにおけるこのパターンの尤もらしい現実的な使用例は、 思いつきません。
もしこのパターンを自分のプロジェクトで使ったことがあるという方いらっしゃいましたら、 ぜひその時の経験をシェアしてください。 フォーラム上で、 あるいは、 support@refactoring.guru までメールでお願いします。 よろしく!