C# Versión 8.0 | |
Publicado en septiembre de 2019 | |
C# 8.0 es la primera versión importante de C# dirigida específicamente a .NET Core. Algunas características se basan en nuevas capacidades de CLR, otras en tipos de biblioteca agregados solo en .NET Core. C# 8.0 agrega las siguientes características y mejoras al lenguaje C#: | |
⮚Miembros de solo lectura un> | |
⮚Métodos de interfaz predeterminados | |
⮚Mejoras en la coincidencia de patrones: | |
⮚Cambiar expresiones | |
⮚Patrones de propiedad | |
⮚Patrones de tuplas | |
⮚Patrones posicionales | |
⮚Uso de declaraciones | |
⮚Funciones locales estáticas | |
⮚Estructuras de referencia desechables | |
⮚Tipos de referencia que admiten valores NULL | |
⮚Transmisiones asincrónicas | |
⮚Índices y rangos | |
⮚Asignación de fusión nula | |
⮚Tipos construidos no administrados | |
⮚Stackalloc en expresiones anidadas | |
⮚Mejora de cadenas textuales interpoladas | |
Los miembros de la interfaz predeterminada requieren mejoras en CLR. Esas características se agregaron en CLR para .NET Core 3.0. Los rangos, índices y flujos asincrónicos requieren nuevos tipos en las bibliotecas de .NET Core 3.0. Los tipos de referencia que admiten valores NULL, aunque se implementan en el compilador, son mucho más útiles cuando las bibliotecas están anotadas para proporcionar información semántica sobre el estado nulo de los argumentos y los valores de retorno. Esas anotaciones se están agregando en las bibliotecas de .NET Core. |