This is the Patterns Roundup—the Penultimate episode in our Design Patterns series.

In this episode you'll learn about five more patterns: Facade, Mediator, Memento, Flyweight, and Extension Object.

The Facade and Mediator patterns are used when you have a group of objects that you want to impose a policy upon. Facade imposes that policy overtly from above. Mediator imposes it covertly from below.

Memento is used when you want to capture the state of of an object inside an opaque token that can be passed around the system, and that can later be used to reconstitute the state of the captured object.

Flyweight is used when you have a group of objects that share a large amount of common state. That state is moved into a separate object and shared amongst all the objects.

Extension Object is yet another member of the Visitor family of patterns that allow us to add new behavior to existing hierarchies without changing those hierarchies.

If the first 90 seconds of the video seems low resolution, don't worry, It gets better. We're working on fixing that.