Ваши коллеги уже изучают .NET 10 → а вы готовы остаться на старых версиях?
Каждый релиз .NET приносит десятки нововведений, которые меняют подходы к разработке. Пока одни программисты осваивают новый синтаксис C# 14 и возможности runtime, другие продолжают писать код «по-старому» и удивляются, почему их решения выглядят устаревшими.
.NET 10 — это не просто очередное обновление. Это LTS-версия, которая задаст стандарты разработки на ближайшие годы. Новый синтаксический сахар, field и extension в C# 14, обновления в MAUI и EF Core — всё это уже меняет то, как пишут современные приложения.
Вебинар «Что нового в .NET 10 для разработчиков» в рамках курса «C# углубленный»
→ 18 августа, 20:00
→ Антон Герасименко
Программа:
→ Обзор ключевых нововведений .NET 10 и их практическое применение
→ Синтаксические конструкции C# 14: сахар, field, extension
→ Изменения в runtime и их влияние на производительность приложений
→ Новые возможности MAUI и EF Core для современной разработки
После вебинара вы поймёте, как адаптировать свой код под новые стандарты, сможете читать и писать современный C# код и не будете отставать от коллег, которые уже перешли на актуальные версии.
Бесплатная регистрация — займите место в числе первых: https://otus.pw/dmGS/?erid=2W5zFHRBTUk
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Каждый релиз .NET приносит десятки нововведений, которые меняют подходы к разработке. Пока одни программисты осваивают новый синтаксис C# 14 и возможности runtime, другие продолжают писать код «по-старому» и удивляются, почему их решения выглядят устаревшими.
.NET 10 — это не просто очередное обновление. Это LTS-версия, которая задаст стандарты разработки на ближайшие годы. Новый синтаксический сахар, field и extension в C# 14, обновления в MAUI и EF Core — всё это уже меняет то, как пишут современные приложения.
Вебинар «Что нового в .NET 10 для разработчиков» в рамках курса «C# углубленный»
→ 18 августа, 20:00
→ Антон Герасименко
Программа:
→ Обзор ключевых нововведений .NET 10 и их практическое применение
→ Синтаксические конструкции C# 14: сахар, field, extension
→ Изменения в runtime и их влияние на производительность приложений
→ Новые возможности MAUI и EF Core для современной разработки
После вебинара вы поймёте, как адаптировать свой код под новые стандарты, сможете читать и писать современный C# код и не будете отставать от коллег, которые уже перешли на актуальные версии.
Бесплатная регистрация — займите место в числе первых: https://otus.pw/dmGS/?erid=2W5zFHRBTUk
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🌀 Try .NET — интерактивная среда для работы с .NET прямо в браузере. Проект позволяет запускать и редактировать C#-код в интерактивных документах и учебных материалах, что особенно полезно для обучающих платформ вроде Microsoft Learn.
С помощью dotnet try можно превращать обычные Markdown-файлы в интерактивные руководства с исполняемыми примерами кода. Интеграция с Blazor дает возможность создавать подобный опыт прямо на веб-страницах без необходимости локальной установки SDK.
🤖 GitHub
@csharp_ci
С помощью dotnet try можно превращать обычные Markdown-файлы в интерактивные руководства с исполняемыми примерами кода. Интеграция с Blazor дает возможность создавать подобный опыт прямо на веб-страницах без необходимости локальной установки SDK.
🤖 GitHub
@csharp_ci
⚡ Не сравнивай строки через
Плохая практика:
❌ Медленно (каждый раз создаёт новые строки)
❌ Лишние аллокации памяти
Правильный способ:
✅ Без лишних аллокаций
✅ Намного быстрее
✅ Чёткий контроль над правилами сравнения
📊 Бенчмарки:
.ToLower()
Плохая практика:
bool equal = stringA.ToLower() == stringB.ToLower();
❌ Медленно (каждый раз создаёт новые строки)
❌ Лишние аллокации памяти
Правильный способ:
bool equal = string.Equals(stringA, stringB, StringComparison.OrdinalIgnoreCase);
✅ Без лишних аллокаций
✅ Намного быстрее
✅ Чёткий контроль над правилами сравнения
📊 Бенчмарки:
.ToLower() → ~38 ns
.ToUpper() → ~50 ns
string.Equals(..., OrdinalIgnoreCase) → ~0.003 ns 🚀
Что если за один вечер успеть прокачать скилы у пирса, вдохновиться новыми идеями за мороженым и отдохнуть под DJ-сет на закате?
GoSharp Weekend от Ozon Tech — летняя перезагрузка для тех, кто пишет на Go и C#.
Эксперты команд backend-разработки Ozon Tech поделятся внутренними исследованиями и инструментами оптимизации, которые уже доказали эффективность в продакшене.
Подавай заявку и жди приглашения!
GoSharp Weekend от Ozon Tech — летняя перезагрузка для тех, кто пишет на Go и C#.
Эксперты команд backend-разработки Ozon Tech поделятся внутренними исследованиями и инструментами оптимизации, которые уже доказали эффективность в продакшене.
Подавай заявку и жди приглашения!
🧼 Как писать чистый и тестируемый middleware в ASP.NET Core
Самый простой способ — сделать его строго типизированным.
📦 Что нужно:
1. Создай класс, который реализует
2. Помести всю логику в
Но не забудь два важных шага:
✅ Зарегистрируй middleware в DI-контейнере:
✅ Добавь его в пайплайн:
🎯 Такой подход:
- делает middleware переиспользуемым
- учитывает область действия зависимостей (scoped)
- и позволяет легко покрыть тестами
Идеально, если хочешь поддерживаемый и чистый код.
Самый простой способ — сделать его строго типизированным.
📦 Что нужно:
1. Создай класс, который реализует
IMiddleware
2. Помести всю логику в
InvokeAsync(...)
Но не забудь два важных шага:
✅ Зарегистрируй middleware в DI-контейнере:
services.AddTransient<YourMiddleware>();
✅ Добавь его в пайплайн:
app.UseMiddleware<YourMiddleware>();
🎯 Такой подход:
- делает middleware переиспользуемым
- учитывает область действия зависимостей (scoped)
- и позволяет легко покрыть тестами
Идеально, если хочешь поддерживаемый и чистый код.
Что выведет на экран этот код?
Anonymous Quiz
13%
True, True
33%
True, False
23%
False, False
25%
False, True
6%