Strategy Pattern
The Strategy Pattern (aka. Policy Pattern), is perhaps one of the most simple design patterns of all. However, just because it is considerably simpler than other patterns does not mean that it is less valuable. Perhaps even the opposite. As a Behavioral Pattern, the strategy pattern provides objects with the ability to change their behavior (aka. strategy).