A simple demonstration of the Strategy Pattern.
see http://en.wikipedia.org/wiki/Strategy_pattern
Design Principles
- Program to an interface, not an implementation
- Favor composition over inheritance
For a complete write up see http://bmchild.blogspot.com/2013/08/design-pattern-strategy.html