Design patterns are ways of implementing familiar solutions using an established set of concepts and procedures.
This repository is a collection of implementations of the common design patterns using Ruby.
Ruby was selected for its strong OO conventions. All code in this repository can be run by any basic ruby interpreter without any external dependencies.
A glossary of terms for reference.
- Singletons code description
- Iterators code description
- Commands code description
- Proxies code description
- Flyweight code description
- State code description
- Factory code description
- Decorator code description
- Strategy code description
- Observer code description
- Adapter code description
- Prototype code description
- Visitor code description
- Facade code description
- Delegate code description
- Memento code description
- Composite code description