Software design pattern (source code)

= Software design pattern

A reusable organization of responsibilities and interactions for a recurring software-design problem. The <Memento pattern> separates snapshot creation/restoration from history management, while the <Decorator pattern> composes independent responsibilities behind one interface. A pattern specifies an arrangement rather than one mandatory class naming scheme.