learning all design patterns
### Abstract Factory
### Builder
### Factory Method
### Object Pool
### Prototype
### Singleton
### Adapter
### Bridge
### Composite
### Decorator
### Facade
### Flyweight
### Private Class Data
### Proxy
### Chain of responsibility
### Command
### Interpreter
### Iterator
### Mediator
### Memento
### Null Object
### Observer
### State
### Stategy
### Template method
### Visitor