Apex Design Patterns - Strategy Pattern

In Strategy pattern, you define multiple solution to same problem and solution can be selected at run time depending on condition.

In Apex, we can use custom setting or custom metadata to define these condition.