Behavioral Patterns Design Patterns: Elements of Reusable Object-Oriented Software Sections: Chain of responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template method Visitor