Glossary: Refactoring and Clean Code
Strategy pattern
Also written: Strategy
A design pattern where interchangeable objects each provide the same method, so behavior can be swapped without changing the code that uses them. Classes such as `Courier` and `Pickup`, which each offer the same method, work in a similar way.