Microsoft раскрывает возможности предварительной версии C#13

Компания Microsoft объявила подробности о том, что будет включено в C# 13. Новость была озвучена на недавней конференции Microsoft Build. В новой версии будут улучшены параметры, типы расширения и несколько функций для повышения производительности.

Самым заметным изменением станет то, что параметры больше не будут ограничиваться массивами. Описывая изменения, Microsoft говорит, что, как и прежде, когда перед параметром появляется ключевое слово params, при вызове метода можно указать список из нуля или более значений через запятую, и эти значения будут помещены в коллекцию типа параметра.

Однако, начиная с C# 13, тип параметра params может быть любым из типов, используемых в выражениях коллекций, таких как List<T>, Span<T> и IEnumerable<T>. Можно даже использовать собственные типы коллекций, если они подчиняются специальным правилам. Возможность использовать тип Span повышает производительность, поскольку снижает потребление памяти.

Следующее изменение - добавление типов расширения, хотя эта возможность не включена в текущую предварительную версию. Методы расширения поддерживаются со времен C#3 и могут использоваться для добавления методов к базовому типу, даже если вы не можете изменить его код. В C# 13 будут добавлены типы расширения - новый тип, который предоставляет члены расширения для базового типа и предназначен для таких случаев, когда у вас есть базовый тип, код которого вы не можете изменить, но хотите внести в него изменения.

Типы расширения имеют методы, свойства и другие члены, которые могут быть экземплярами или статическими. По словам Microsoft, будет два вида типов расширений: неявные и явные. Неявные типы расширений применяются ко всем вхождениям базового типа - точно так же, как сегодня применяются методы расширения. Методы и свойства явных расширений применяются только к тем экземплярам базового типа, которые были преобразованы в явный тип расширения.

Среди других улучшений в C# 13 - шаблон оператора блокировки, призванный сделать C# более соответствующим новому выделенному типу System.Threading.Lock в .NET 9, а также улучшения в естественном типе группы методов.

C# является частью .NET SDK.

Microsoft раскрывает возможности предварительной версии C#13
Понравилась новость? Тогда не забудь оставить свой комментарий.
А так же, добавь наш сайт в закладки (нажми Ctrl+D), не теряй нас.
06 июня 2024 г.
51
Теги: Microsoft , C#

Комментарии

Оставить комментарий:
* отправляя форму, я даю согласие на обработку персональных данных

Читайте еще

Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!

Только свежие новости программирования и технологий каждый день.