| Pattern Name | Description | Example |
|---|---|---|
| Mediator | An object encapsulates the interaction of other objects | All components in a dialog box notify a mediator of state changes. The mediator updates affected components |
| Memento | An object yields an opaque snapshot of a part of its state, and can later return its state from that snapshot | An undo mechanism requests a memento from an object before mutating it. If the operation is undone, the memento is used to roll the object back to its old state |
| Observer | An object wants to be notified when another object generates an event | User interface components generate events, such as button clicks and text changes. A dialog box observes the events and repaints its contents |