0
Отвечено

Factory Method pattern

Sergey Pomaraiko 4 года назад обновлен anonymous 4 года назад 1

Подскажите, паттерн Factory Method   не противоречит принципу Single Responsibility?

В книге есть такие строки


"Базовый класс фабрики. Заметьте, что "фабрика" — это всего  лишь дополнительная роль для класса. Скорее всего, он уже имеет какую-то бизнес-логику, в которой требуется создание разнообразных продуктов."

Ответ

Ответ
Отвечено

Здравствуйте, Сергей!

Спасибо за хороший вопрос. В какой-то степени, да, противоречит. В то же время, от разделения может и не быть очень большого выигрыша. Принципы SOLID не являются чем-то высеченным в камне.


Если у вас есть небольшой класс для работы с отчетами, в котором есть фабричный метод, то выделив всю фабричную часть в отдельный класс вы точно сделаете код сложнее, но не факт, что этим будет удобнее пользоваться.

ХОРОШО, МНЕ ПОНРАВИЛОСЬ
Оценка удовлетворенности от Sergey Pomaraiko 4 года назад
Ответ
Отвечено

Здравствуйте, Сергей!

Спасибо за хороший вопрос. В какой-то степени, да, противоречит. В то же время, от разделения может и не быть очень большого выигрыша. Принципы SOLID не являются чем-то высеченным в камне.


Если у вас есть небольшой класс для работы с отчетами, в котором есть фабричный метод, то выделив всю фабричную часть в отдельный класс вы точно сделаете код сложнее, но не факт, что этим будет удобнее пользоваться.

Сервис поддержки клиентов работает на платформе UserEcho