🎉 Hooray! After 3 years of work, I've finally released the ebook on design patterns! Check it out »

Memento in Swift

Memento is a behavioral design pattern that allows making snapshots of an object’s state and restoring it in future.

The Memento doesn’t compromise the internal structure of the object it works with, as well as data kept inside the snapshots.

Learn more about Memento

Usage of the pattern in Swift



Usage examples: The Memento’s principle can be achieved using the serialization, which is quite common in Swift. While it’s not the only and the most efficient way to make snapshots of an object’s state, it still allows storing state backups while protecting the originator’s structure from other objects.

Memento in Other Languages

Memento in Java Memento in C# Memento in PHP Memento in Python Memento in Ruby Memento in TypeScript