Java Design Patterns
Overview
Java implementations of all classic Gang of Four design patterns, built while working through Head First Design Patterns by Eric Freeman and Elisabeth Robson. Organized into behavioral (Command, Iterator, Observer, State, Strategy, Template Method), structural (Adapter, Composite, Decorator, Facade, Proxy), creational (Factory, Singleton), and compound patterns (MVC, Multi-Pattern Duck Simulator). Each example is self-contained and compiles independently. Reinforces nine core design principles including encapsulation, programming to interfaces, and composition over inheritance.
Patterns Covered
- Behavioral: Command, Iterator, Observer, State, Strategy, Template Method
- Structural: Adapter, Composite, Decorator, Facade, Proxy
- Creational: Factory, Singleton
- Compound: MVC, Multi-Pattern Duck Simulator
Technologies Used
JavaOOPDesign PatternsGoFSoftware Architecture
Getting Started
Visit the GitHub repository to explore the code and examples. Each pattern is self-contained and can be compiled independently using the included compile.sh script.