No video

Денис Цветцих - LINQ Expressions: искусство запрашивать данные

  Рет қаралды 3,641

DotNext — конференция для .NET‑разработчиков

DotNext — конференция для .NET‑разработчиков

Күн бұрын

Ближайшая конференция - DotNext 2024, 10 - 11 сентября, Москва + online
Подробности и билеты: jrg.su/x2GKnA
- -
Запросов на чтение данных в разы больше, чем запросов на их изменение. При этом логика фильтрации может меняться с течением времени. Поэтому важно уметь инкапсулировать правила для фильтрации в специальных обертках, а также комбинировать их как между собой, так и с правилами без оберток.
Доклад - о том, как решить эту задачу при помощи современной реализации паттерна «Спецификация» с использованием LINQ Expressions и с какими подводными камнями можно столкнуться при его реализации. Денис рассказал и о наиболее удобных для использования библиотеках, в которых «Спецификация» уже реализована, в том числе как можно сделать ее c использованием новых фич EF Core 7 или Source Generators.
Кроме того, спикер продемонстрировал выбор наиболее удобного и эффективного способа фильтрации по вложенным коллекциям. И показал, как автофильтр помогает бороться с рутиной фильтрации.
Скачать презентацию с сайта DotNext - jrg.su/G7rqMq
#linq

Пікірлер: 7
@dsboldyrev
@dsboldyrev Ай бұрын
Мне кажется или доклад на половину скопирован с Максим Аршинов - Деревья выражений в enterprise-разработке?
@user-dt6wc3sr5s
@user-dt6wc3sr5s 3 ай бұрын
Интересно, есть ли отличия от этого же доклада на другой конференции, который выложили 3 месяца назад?)))
@user-ge4ds5ii8p
@user-ge4ds5ii8p 3 ай бұрын
Денис до этого тоже на двух разных конференциях с одним и тем же докладом про модульный монолит выступал
@vladlenbulatov1022
@vladlenbulatov1022 3 ай бұрын
Фильтр накладывается "НА...", а это подразумевает логическую операцию "И", а вот "UNION" - это ИЛИ... Это философский аспект и его часто на факультетах информатики, кибернетики и прочих математик не преподают - жаль
@Fikusiklol
@Fikusiklol 3 ай бұрын
Интересный разговор, но 90% времени автор рассказывал про костыли и как обойти то или иное ограничение. Спецификация не особо прижилась даже в самом DDD, тк это как правило рид сторона приложения. Если же есть некое бизнес правило в рамках которого надо проверить какие то данные, то это либо определяется либо на уровне контракте репозитория или доменного сервиса. Спецификация в этом случае - это вопрос совсем другого слоя (апп или инфраструктура). Менять эти спецификации также нужно будет при изменении требований, как и обычные лямбды. В чем смысл всего этого accidental complexity и кто его будет поддерживать? Лично я строго против данного паттерна и подхода.
@polarbar780
@polarbar780 3 ай бұрын
Отличный доклад, просмотрел на 2 раза. Зачастую в больших проектах забивают на все эти вещи и делают кучу экстеншен методов на все случаи жизни ) Но это не правильно. Правильный подход описан тут
Станислав Флусов - Когда 100% CPU ничего не значат
57:43
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2,6 М.
Денис Пешехонов, Александр Химушкин - Укрощаем DDD на практике
56:21
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2,6 М.
Or is Harriet Quinn good? #cosplay#joker #Harriet Quinn
00:20
佐助与鸣人
Рет қаралды 6 МЛН
Meet the one boy from the Ronaldo edit in India
00:30
Younes Zarou
Рет қаралды 19 МЛН
Can This Bubble Save My Life? 😱
00:55
Topper Guild
Рет қаралды 85 МЛН
Алексей Фадеев - Не EF Core единым: альтернативная ORM LINQ to DB и ее возможности
59:25
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2,4 М.
Марк Шевченко - Откуда что взялось в C#
1:00:13
DotNext — конференция для .NET‑разработчиков
Рет қаралды 8 М.
Поднимаем PHP в Kubernetes локально
39:34
Александр Пугач - Метрики в .NET на примере OpenTelemetry и Prometheus
59:57
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2,6 М.
Станислав Сидристый - lock(_sync): иллюзия идеального выбора
1:03:02
DotNext — конференция для .NET‑разработчиков
Рет қаралды 9 М.
Станислав Сидристый - Размышления на краю технологической сингулярности
1:00:14
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2 М.
Михаил Дошевский - Workflow-архитектура сервисов на .NET
1:01:11
DotNext — конференция для .NET‑разработчиков
Рет қаралды 2,3 М.