| Purpose | What does the pattern do? What design problem does it solve? |
| Structure | A graphical representation of the classes & interfaces comprising the pattern |
| Consequences | What are the trade-offs? |
| Implementation | What important implementation details are not obvious? |
| Sample Code | |
| Related Patterns | What design patterns are similar? What are the key differences? With which other patterns should this pattern be used? |