Как стать автором
Обновить

Комментарии 9

Ну вот всеми тут любимый DDD - это как раз стрельба дробью получается? Добавил поле - надо его добавить в базу, в dto для базы, мапперы из базы в сущности, в сущность, в контракт, в маппер из сущности в json. Да ещё и логику обработки этого поля надо вписать в сервис и репозиторий. Все это в разных файлах и разных пакетах.

Не надо путать "стрельбу дробью" и обычную сквозную трассировку одной доменной идеи через предусмотренные слои. Причем, локализованную bounded context-ом.

Вот где настоящая "стрельба дробью", это где прокидывают поля из БД чуть ли не напрямую до UI "as-is". По сути, тогда мы делаем структуру таблиц БД публичным контрактом сразу для всех частей системы. И любая правка этой структуры будет размазываться дробью по проекту. Так что, по сути DDD, наоборот, лечит эту проблему.

Какое прелестное сочетание в одном предложении DDD и пачки грязных технических деталей.

Иногда лучше иметь три похожих но простых и чистых метода, полученных copy paste, чем иметь один переусложненный с кучей if

Ох, не знаю. Как по мне, DRY — один из немногих принципов, нарушать который (почти) всегда себе дороже. Почему «почти» — ну, иногда хочется форкнуть логику, чтобы развивать её в разных направлениях. Формально нарушение, а по сути — промежуточный этап эволюции. Кстати, хе-хе, в статье это, вроде бы, подпадает под «лодочный якорь». А мои коллеги, не выкупавшие подобную предусмотрительность, называли такие штуки ругательным словом YAGNI, чем страшно бесили.

В данном конкретном случае я бы предположил, что налицо дефицит выразительных средств языка и требуется обобщение какими-то иными средствами — например, шаблонами или препроцессором. Но, конечно, это надо на конкретных примерах смотреть.

Нафталинище.

Ух, советы 30-летней давности подъехали) Без негатива...

Фаулер и Боб писали свои книжки когда на свете не было СМЭВ и ГОсуслуг которые интегрируются чеинз СМЭВ. И они 1С в глаза не видели просто. Где на одну кнопку "Провести и закрыть" повешано 10000 операций над системой потому что пользователям лень нажимать 10000 кнопок.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий