Чему вы научитесь
- Понимать, зачем LINQ нужен и где без него не обойтись
- Писать запросы в двух стилях: expression syntax и method syntax
- Использовать лямбда-выражения и не путаться в их синтаксисе
- Фильтровать (Where), проецировать (Select) и сортировать (OrderBy) коллекции
- Считать суммы, максимумы и кастомные агрегаты через Aggregate
- Группировать данные через GroupBy и соединять коллекции через Join
- Работать с множествами (Union, Intersect, Except)
- Понимать разницу между отложенным и немедленным выполнением — и не попадать в ловушки
- Оптимизировать LINQ-запросы по производительности
- Знакомиться с IQueryable и понимать, как LINQ работает с базами данных через EF Core
О курсе
LINQ — это швейцарский нож C# разработчика. Курс для тех, кто знает циклы и условия, но устал писать ручную фильтрацию, сортировку и группировку. Научитесь писать лаконичные запросы к коллекциям, базам данных и XML одной строкой. Синтаксис запросов и методов, отложенное выполнение, агрегация, группировка, соединения и даже немного Expression Trees.
Для кого этот курс
C# разработчики с опытом от 0 до 2 лет, которые стесняются признаться, что не понимают LINQ
Те, кто пишет foreach на foreach и чувствует, что код раздувается
.NET-джуны, готовящиеся к собеседованию (LINQ спрашивают почти всегда)
Разработчики, которые переходят с других языков (Java, Python) на C# и хотят писать идиоматичный код
Все, кто работает с коллекциями в C# и хочет делать это красиво
Начальные требования
-
Базовый C#: классы, методы, переменные, циклы, условия
-
Понимание generics (List<T>, IEnumerable<T> хотя бы на уровне «тут T — это тип»)
-
Знакомство с лямбда-выражениями (x => x.Id > 5) на уровне «видел, но не уверен» — мы разжуём
Преподаватели курса
Что вы получите
- Шпаргалку по всем основным LINQ-операторам (Where, Select, OrderBy, GroupBy, Join, Aggregate и др.)
- Понимание, почему запрос иногда выполняется не там, где вы ожидаете
- Готовые паттерны: фильтрация + сортировка + проекция одной цепочкой
- Примеры работы с IQueryable для Entity Framework (как не убить базу данных)
- Умение читать и писать LINQ так, что коллеги не будут крутить пальцем у виска
- Базовое понимание Expression Trees для тех, кто хочет копать дальше