Паттерн «Стратегия» отличается от других поведенческих паттернов проектирования тем, что позволяет выбирать и менять алгоритм работы в зависимости от ситуации. 10 Он определяет семейство алгоритмов, инкапсулирует каждый из них и делает их взаимозаменяемыми. 26
Другие поведенческие паттерны проектирования, например:
- Паттерн «Состояние». 1 Позволяет объектам менять поведение в зависимости от своего состояния. 1 Извне создаётся впечатление, что изменился класс объекта. 1
- Паттерн «Команда». 1 Превращает запросы в объекты, позволяя передавать их как аргументы при вызове методов, ставить запросы в очередь, логировать их, а также поддерживать отмену операций. 1
- Паттерн «Цепочка ответственности». 10 Подразумевает перебор объектов до тех пор, пока не найдётся нужный для решения задачи. 10 В цепочке сигнал, который нужно обработать, переходит от одного объекта к другому по очереди. 10 Когда находится подходящий обработчик, он обрабатывает сигнал, а цепочка в этом месте обрывается. 10