C# 9.0 – Specification
Introducción
A lo largo de diferentes entradas en mi blog, voy a tratar de abordar las diferentes mejoras que han sido añadidas al lenguaje C# en su especificación C# 9.
El siguiente resumen nos detalla las diferentes especificaciones de C# soportadas en según qué versiones de .NET.
Recordemos que la especificación C# 9 está incluida dentro de .NET 5 que aparecerá como versión final, en el mes próximo de Noviembre aproximadamente.
Tipo de .NET | Versión | Especificación | |
---|---|---|---|
.NET Framework | Todas las versiones | C# 7.3 | |
.NET Standard | 1.x | C# 7.3 | |
.NET Standard | 2.0 | C# 7.3 | |
.NET Standard | 2.1 | C# 8.0 | |
.NET Core | 2.x | C# 7.3 | |
.NET Core | 3.x | C# 8.0 | |
.NET | 5.x | C# 9.0 | |
Algunas versiones de Visual Studio no soportan algunas especificaciones del lenguaje |
A continuación indico los enlaces a las diferentes secciones que sobre la especificación C# 9 voy a tratar en el blog.
- Records
- Top-Level Statements
- Init-only Setters
- Pattern Matching Enhancements
- Target-typing
- Target-typed Conditional Expressions
- Covariant Return Types
- New features for Partial Methods
Recuerda que necesitarás el SDK de .NET 5 ó superior para poder trabajar con la nueva especificación de C# 9 además de (opcionalmente) Visual Studio Code, o la última versión de Visual Studio (en preview actualmente) que soporta esta versión del lenguaje. También puedes utilizar SharpLab.io para ejecutar diferentes versiones de C# incluida C# 9 y trastear por la nueva especificación, si bien, la fiabilidad completa la encontrarás en el entorno de desarrollo siempre.
También puedes consultar aquí las Language Feature Status de la especificación del lenguaje tanto en el pasado, como en el presente y el futuro.
Happy Coding!