Software Architecture · Design Patterns
How should Strategy pattern be applied in a production system?
Define a stable interface, select strategies explicitly, keep them stateless when possible, and make selection rules observable and testable.