Фильтр накладывается "НА...", а это подразумевает логическую операцию "И", а вот "UNION" - это ИЛИ... Это философский аспект и его часто на факультетах информатики, кибернетики и прочих математик не преподают - жаль
Интересный разговор, но 90% времени автор рассказывал про костыли и как обойти то или иное ограничение. Спецификация не особо прижилась даже в самом DDD, тк это как правило рид сторона приложения. Если же есть некое бизнес правило в рамках которого надо проверить какие то данные, то это либо определяется либо на уровне контракте репозитория или доменного сервиса. Спецификация в этом случае - это вопрос совсем другого слоя (апп или инфраструктура). Менять эти спецификации также нужно будет при изменении требований, как и обычные лямбды. В чем смысл всего этого accidental complexity и кто его будет поддерживать? Лично я строго против данного паттерна и подхода.
Отличный доклад, просмотрел на 2 раза. Зачастую в больших проектах забивают на все эти вещи и делают кучу экстеншен методов на все случаи жизни ) Но это не правильно. Правильный подход описан тут
Мне кажется или доклад на половину скопирован с Максим Аршинов - Деревья выражений в enterprise-разработке?
Интересно, есть ли отличия от этого же доклада на другой конференции, который выложили 3 месяца назад?)))
Денис до этого тоже на двух разных конференциях с одним и тем же докладом про модульный монолит выступал
Фильтр накладывается "НА...", а это подразумевает логическую операцию "И", а вот "UNION" - это ИЛИ...
Это философский аспект и его часто на факультетах информатики, кибернетики и прочих математик не преподают - жаль
Интересный разговор, но 90% времени автор рассказывал про костыли и как обойти то или иное ограничение.
Спецификация не особо прижилась даже в самом DDD, тк это как правило рид сторона приложения.
Если же есть некое бизнес правило в рамках которого надо проверить какие то данные, то это либо определяется либо на уровне контракте репозитория или доменного сервиса. Спецификация в этом случае - это вопрос совсем другого слоя (апп или инфраструктура).
Менять эти спецификации также нужно будет при изменении требований, как и обычные лямбды.
В чем смысл всего этого accidental complexity и кто его будет поддерживать?
Лично я строго против данного паттерна и подхода.
Отличный доклад, просмотрел на 2 раза. Зачастую в больших проектах забивают на все эти вещи и делают кучу экстеншен методов на все случаи жизни )
Но это не правильно. Правильный подход описан тут