Вышел новый релиз C# (.NET): что изменилось
Сообщество разработчиков встретило важное событие — выход очередного стабильного релиза платформы .NET и языка C#. Новый выпуск принёс множество улучшений, которые затронули как производительность и безопасность, так и удобство написания кода. Разберём главные изменения, которые стоит знать каждому, кто работает с экосистемой Microsoft.
Основные нововведения в языке C#
Разработчики языка продолжают двигаться в сторону лаконичности и выразительности. В новом релизе появилось несколько долгожданных фич:
- Primary Constructors для классов и структур — теперь можно объявлять параметры конструктора прямо в заголовке типа, сокращая шаблонный код. Ранее такая возможность была доступна только для записей (records).
- Collection Expressions (Коллекционные выражения) — новый синтаксис для создания и инициализации массивов, списков и других коллекций. Вместо
new int[] { 1, 2, 3 }можно писать просто[1, 2, 3]. - Inline Arrays (Встраиваемые массивы) — улучшенная работа с массивами фиксированного размера, что особенно полезно для низкоуровневых и высокопроизводительных сценариев.
- Улучшенная работа с ref-структурами — расширены возможности безопасной работы с ref-полями и ref-возвратами, что позволяет писать более эффективный код без потери типобезопасности.
Производительность и оптимизация
Один из главных фокусов нового релиза — скорость. Команда .NET продолжает оптимизировать как сам рантайм, так и компилятор:
- JIT-компилятор (RyuJIT) получил ряд улучшений для более агрессивной оптимизации циклов и условных переходов.
- Native AOT (Ahead-of-Time) стал стабильнее и поддерживает больше сценариев, включая работу с сериализацией и рефлексией. Это позволяет создавать ещё более быстрые и компактные приложения.
- Сборщик мусора (GC) оптимизирован для работы с большими объектами и сокращения пауз в интерактивных приложениях.
- Улучшена работа с LINQ — некоторые запросы теперь выполняются быстрее без изменения кода.
Обновления платформы .NET
Платформа в целом также получила значительные обновления, которые упрощают жизнь разработчикам:
- .NET MAUI — улучшена производительность рендеринга и исправлены многие ошибки, связанные с работой на iOS и Android. Добавлена поддержка новых элементов управления.
- ASP.NET Core — внедрена поддержка новейших протоколов HTTP/3 и улучшена работа с gRPC. Появились новые инструменты для мониторинга и метрик.
- System.Text.Json — добавлены новые атрибуты для тонкой настройки сериализации, а также улучшена производительность работы с большими JSON-файлами.
- Безопасность — обновлены криптографические библиотеки для соответствия современным стандартам, улучшена защита от атак по сторонним каналам.
Инструменты разработчика
Не обошли стороной и средства разработки. Visual Studio и Rider получили обновления, которые помогают быстрее осваивать новые возможности:
- Новые code actions и рефакторинги, автоматически преобразующие старый код под новый синтаксис.
- Улучшенная поддержка анализаторов — теперь IDE предупредит вас