Design Patterns


This page provides links to code examples of all 23 Design Patterns presented in
Design Patterns: Elements of Reuseable Object-Oriented Software by Gamma, Helm, Johnson, and Vlissides.
For details on each of the Design Patterns see the links on the CS 307 main page.
All code on these links is written in C++.

1. Strategy
2. Observer
3. Decorator
4. Factory Method
5. Abstract Factory
6. Singleton
7. Command
8. Adapter
9. Facade
10. Template Method
11. Iterator
12. Composite
13. State
14. Proxy
15. Bridge
16. Builder
17. Chain of Responsibility
18. Flyweight
19. Interpreter
20. Mediator
21. Memento
22. Prototype
23. Visitor