GoF Format Cont’d
Applicability
- What are the situations in which the pattern can be applied? How can you recognize these situations?
Participants
- The classes and/or objects participating in the design pattern and their responsibilities.
Collaborations
- How the participants collaborate to carry out their responsibilities.
Consequences
- How does the pattern support its objectives? What are the trade-offs and results of using the pattern? What aspect of system structure does it let you vary independently?
Implementation
- What pitfalls, hints, or techniques should you be aware of when implementing the pattern? Are there language-specific issues?