Содержание
Вышло превью .NET 10 с C# 14, улучшенным JIT и новыми API. Улучшена работа с памятью, производительность и поддержка Blazor, MAUI и ASP.NET Core
Microsoft представила первую превью-версию .NET 10, которая принесла обновленный язык C# 14, значительные улучшения в JIT-компиляции и новые API.
Финальный релиз ожидается в ноябре, а пока разработчики могут опробовать нововведения в тестовой версии.
C# 14: удобнее, быстрее, гибче
В новой версии языка появились важные улучшения:
- Поддержка
System.Span<T>
иSystem.ReadOnlySpan<T>
на уровне языка, что делает работу с этими типами более естественной и повышает производительность без потери безопасности. - Упрощенная работа с дженериками — теперь аргумент
nameof
может быть непривязанным (unbound
) дженериком. - Лямбда-выражения стали гибче: можно добавлять модификаторы параметров (
scoped
,ref
,in
,out
,ref readonly
) без указания их типов.
Эти нововведения позволяют писать более эффективный и компактный код без потери производительности.
Улучшенный JIT и производительность .NET 10
Разработчики продолжают снижать абстрактные накладные расходы популярных языковых конструкций:
- JIT-компилятор теперь умеет де-виртуализировать вызовы методов для интерфейсов массивов, что ускоряет работу с массивами.
- Автоматическое выделение небольших массивов в стеке, если они не содержат указателей на управляемую память (GC), снижает нагрузку на сборщик мусора.
Благодаря этим улучшениям .NET 10 стал еще быстрее, а нагрузка на память уменьшилась.
Новые API и улучшения в библиотеках
В стандартные библиотеки добавлены новые API, которые оптимизируют работу с текстовыми данными и 3D-графикой:
- Обработка символов теперь работает с
Span<char>
, что позволяет избежать лишних выделений памяти. - Поддержка матриц левой трансформации, полезная при работе с 3D-графикой.
- Улучшена производительность
ZipArchive
для работы с архивами.
Эти обновления направлены на ускорение работы кода и снижение потребления памяти.
Обновления ASP.NET Core, Blazor и MAUI
- ASP.NET Core теперь поддерживает OpenAPI 3.1 и генерацию API-документации в формате YAML.
- Blazor получил подсветку синтаксиса маршрутов, что упрощает разработку.
- .NET MAUI теперь поставляется в виде .NET workload и через NuGet-пакеты, что облегчает фиксацию версий и тестирование экспериментальных сборок.
Также в Entity Framework появился метод LeftJoin
для LINQ, что упрощает написание SQL-запросов.
Скачать и опробовать .NET 10 можно перейдя по ссылке на официальный сайт Microsoft.