Шаблон стратегии, заменяющий if / else или статистику случаев - PullRequest
1 голос
/ 22 сентября 2010

Почему мне кажется, что использование Стратегии - это просто откладывание if / else на Фабрику? Используя Стратегию, фабрике не нужно выяснять, какой конкретный класс нужно создать, и не делает ли это, если / else?

Есть ли другой способ использовать Map / List каким-либо образом, и ключи должны быть именем класса, для которого создается экземпляр, и, возможно, иметь класс, использующий фабричную передачу имени?

1 Ответ

1 голос
/ 22 сентября 2010

Карта \ Список является реализацией шаблона Фабрики.

Использование паттерна Стратегия лучше, чем если бы \ else, потому что это создает слабосвязанный код.С помощью Factory + Startegy вы можете расширять алгоритмы обработки без прикосновения к клиентскому коду и иметь больше возможностей для динамической настройки кода (без перекомпиляции).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...