Как совместить паттерн "Стратегия" и "Фабричный метод"?

При проектировании столкнулся с задачей: создаются разные обьекты, с помощью фабричного метода. Каждый обьект может производить определённые действия, некоторые типы обьектов могут производить одно и то же действие.

Вопрос заключается в том, как прикрутить тут паттерн стратегии так, чтобы обьект производил только действия, свойственные ему. Нужно создавать интерфейсы под каждую категорию действий?


Ответы (1 шт):

Автор решения: Aziz Umarov

Да, для стратегии придется создавать абстракции.

Скажем есть фабрика создающая какие-то списки.

List Factory.create()

Так вот стратегия будет реализация интерфейса List это ArrayList или LinkedList.

→ Ссылка