What’s up with C# 9 / Что нового в C# 9

16 октября, 14:00

Key ideas

The new version of the language delivers a bunch of new features. Some of them are probably already familiar to you: source code generators, pattern-matching improvements, records, context-defined new() — while others are probably less known, like changes for nullable reference types and context-defined types in conditional expressions. Perhaps only those of you who do low-level optimisation and work with unsafe code may have heard about skipping the init of local variables, native integer types, and function pointers.There are also a few mysterious features that may be included into C#9 or pushed to the next version of the language. These are new null-checking syntax for parameters and method return type covariance.

It is time to figure out scenarios where which of those features truly open new capabilities of the language instead of being some mere syntactic sugar.

I will present a few cases showing what to expect from C#9.


Тезисы

Новая версия языка приносит нам очередную порцию языковых фич. О некоторых из них вы наверняка уже слышали: генераторы исходного кода, улучшения паттерн-матчинга, рекорды, контекстно-типизируемый new(). Некоторые менее известны: например, изменения для nullable reference types и контекстно-типизированные условные выражения. А про что-то, скорее всего, слышали лишь те, кто занимается низкоуровневыми оптимизациями и небезопасным кодом: пропуск инициализации локальных переменных, нативные целочисленные типы, указатели на функции. О чём-то даже до сих пор достоверно неизвестно, будет ли фича включена в C# 9 или перенесена на следующую версию языка — это новый синтаксис проверки параметров на null и ковариантность возвращаемых типов методов.

Самое время разобраться, какие сценарии призваны поддержать новые фичи: что является просто синтаксическим сахаром, а что действительно открывает новые возможности для языка.

В докладе я на примерах расскажу о том, что нас ждёт в C# 9.

Презентация (на Я.Диске)

 

Доступ к записям выступлений DotFest платный.

 

Купить доступ 5 900 ₽

 

Или залогиньтесь, если уже куплено.

JetBrains

Андрей Дятлов

Andrey has been working for JetBrains for 5 years mostly in charge of C# support in ReSharper/Rider: from parser implementation to static analysis and refactoring. He began his coding journey from SCADA-systems and industrial equipment automation, such as magnetron sputtering and plasma etching sets. He enjoys static code analysis, type theory and metaprogramming.


Работает в JetBrains вот уже 5 лет, занимается поддержкой языка C# в ReSharper/Rider от реализации парсера до статических анализов и рефакторингов. Начинал свой путь к программированию со SCADA-систем и автоматизации промышленного оборудования — установок магнетронного напыления и плазмохимического травления. Интересуется статическим анализом кода, теорией типов и метапрограммированием.

Andrey has been working for JetBrains for 5 years mostly in charge of C# support in ReSharper/Rider: from parser implementation to static analysis and refactoring. He began his coding journey from SCADA-systems and industrial equipment automation, such as magnetron sputtering and plasma etching sets. He enjoys static code analysis, type theory and metaprogramming.


Работает в JetBrains вот уже 5 лет, занимается поддержкой языка C# в ReSharper/Rider от реализации парсера до статических анализов и рефакторингов. Начинал свой путь к программированию со SCADA-систем и автоматизации промышленного оборудования — установок магнетронного напыления и плазмохимического травления. Интересуется статическим анализом кода, теорией типов и метапрограммированием.

Другие спикеры: