Разница между паттернами Bridge и Strategy заключается в том, что они решают разные задачи. 2
Bridge отделяет абстракцию от реализации, чтобы обеспечить возможность выбора между различными имплементациями. 2 То есть Bridge, в отличие от Strategy, применяется к целым конструкциям или иерархическим структурам. 2
Strategy обеспечивает взаимозаменяемость алгоритмов. 2 Этот паттерн содержит один абстрактный интерфейс стратегии и множество конкретных реализаций (алгоритмов) этого интерфейса. 5 Стратегию используют, когда нужно на лету выбирать способ обработки данных в зависимости от ситуации во время выполнения. 1
Таким образом, Bridge нужен, когда необходимо обеспечить связь между двумя часто меняющимися объектными моделями, а Strategy — когда требуется несколько стратегий поведения для объектной модели. 1