Behavioral patterns

Behavioral design patterns are concerned with the interaction and responsibility of objects.

pattern description
Chain of responsibility Sends a request to a chain of objects. Thus, a request can be handled by one or more objects.
Command Provides the command objects that decide who can handle command.
Interpreter Provides a way to evaluate language grammar or expression.
Iterator Represents iterator to traverse a container and access the container's elements.
Mediator Provides an object that encapsulates how a set of objects interact.
Memento Provides the ability to restore the object's previous state.
Observer Notifies clients that state of object was changed.
Strategy Allows to select an algorithm at runtime.
Visitor Allows you to perform operation on group of objects. Algorithm of operation independent from structure of that group.
Null object Implements the expected interface where methods do nothing.