| Pattern Name | Description | Example |
|---|---|---|
| Chain of Responsibility | A request is passed to the first handler in a chain. Each handler acts on the request (or chooses not to act), and passes the request on to the next handler | An event-handling mechanism passes a mouse or key event to a component, which then passes it to the parent component |
| Command | Commands are implemented as objects | A word processor stores recently issued commands so that they can be undone |
| Decorator | The behavior of a class is enhanced, keeping its interface | A user interface component is decorated with scroll bars or borders |
| Facade | A complex subsystem is accessed through a single class | A driver class provides access to the functionality of a database system |