Que nos trae el nuevo .NET 6 y cómo aprovecharlo
Conoce la última versión hasta ahora de la plataforma unificada .NET qué nos trae y ten bases sólidas 😉

Algo de contexto

Primero tengamos algo de contexto estimados lectores y entusiastas devs, .NET es un framework unificado desde su versión .NET 5 en la cual dejó de llamarse .NET Core.

Esta unificación significa que se tiene ahora un sólo SDK unificado, al igual que las bibliotecas base y los entornos de ejecución de aplicaciones de escritorio, web, móviles, IoT y cloud.

Si no tienes muy claro el asunto de .NET, lo confundes con .NET Framework o .NET Core, no te preocupes, nos pasa a todos los dotneteros en un inicio 😁 pero aquí tengo un artículo que definitivamente te ayudará: https://bravedeveloper.com/2021/06/02/que-es-net-core-y-que-lo-diferencia-de-net-framework/

Algunos datos sobre esta versión

.NET 6 fue lanzada el 8 de noviembre del 2021 y el anuncio oficial lo tienes aquí.

Esta es una versión LTS (Long time support) es decir de soporte de tiempo prolongado, con lo cual Microsoft nos asegura al menos 3 años de soporte como bien se menciona en esta documentación oficial.

Fuente: https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core

Novedades y cualidades

Puedes leer la documentación oficial completa que hizo Microsoft acerca de esta nueva versión de .NET desde este enlace.

Según esta documentación, además de la unificación de toda la plataforma en .NET 6 a secas(y ya no net framework, ni net core que tanta confusión ha causado si aún no te has leído mi artículo que lo explica clarito 😄), esta nueva versión ofrece tres cosas muy importantes:

  • Rendimiento mejorado: Por ejemplo el rendimiento del JIT Compiler, el compilador generador de código, la base desde donde se construye todo lo demás tiene una mejora significativa de por ejemplo un 26% respecto a .NET 5 en la ejecución de un algoritmo de sumatoria por iteración, medir mejoras de rendimiento es muy complejo, pero tomé este ejemplo para que tengas una idea más clara y realista, el detalle de todas las mejoras las puedes obtener aquí 😉
  • Mejora en la productividad: Trabajando junto con Visual Studio 2022 proporcionan herramientas muy provechosas como nuevas opciones para manejo de versiones Git, Hot reload o recarga activa, edición de código inteligente, nuevas herramientas de pruebas y diagnóstico para los más entusiastas y mejor trabajo en equipo.
  • Desarrollo simplificado: .Net 6 vino junto con una versión de C# la versión 10, lo cual reduce la cantidad de código que tenemos que escribir los developers, esto hace posible ahorro en tiempo de programación. También es de destacar la introducción de las llamadas API Mínimas que hacen que sea más fácil y rápido codificar microservicios más pequeñitos, más información aquí 😊

Detallando un poquito más acerca de estas mejoras, podemos mencionar que en cuanto a rendimiento se ha mejorado bastante, siendo esta versión la más rápida en todos los aspectos a sus anteriores versiones, y es de resaltar el excelente trabajo que han hecho los colaboradores de todo el mundo en el repositorio dotnet/runtime, el hogar del .net runtime, hosts y core libraries. En palabras de Stephen Toub, desarrollador del equipo .NET en Microsoft, han sido más de 6500 Pull Requests mergeados en la rama de release para .NET 6.

Voy a resaltar las siguientes:

  • Se ha mejorado la clase de acceso a archivos FileStream la cual se ha reescrito, logrando además de una notoria mejora en rendimiento, que nunca se bloquee cuando se crea para IO asincrónica en Windows, más detalles aquí.
  • Optimización guiada por perfiles: la PGO como también se le llama es desde donde el compilador JIT genera código optimizado para tios frecuentes. Esta mejora es notoria ya que al ser a nivel del compilador JIT, repercute en casi todo.
  • Compilación de AOT (Ahead of time) mediante la herramienta llamada Crossgen2, el cual mejora el tiempo de inicio de una aplicación, esta herramienta está escrita en C# y ya no en C++ como su versión anterior ya descontinuada Crossgen. Si eres de los que les encanta ir al meollo del asunto puedes leer más información aquí.
  • Hot reload o recarga activa: Es una nueva característica que permite al desarrollador modificar el código duente de la aplicación y aplicar esos cambios en caliente, es decir al instante, por finnn 😀. Esto evidentemente aumenta bastante la practicidad y productividad ya que hace que no tengamos que reiniciar toda la aplicación, esta característica está disponible en Visual Studio 2022. Si eres un ratón de biblioteca aquí más información 🤓.
  • Versión 10 de C#: Mi lenguaje de programación favorito está estrenando nueva versión y se viene con todo, ahora tenemos directivas global using, método async Main, directivas implícitas, tipos de referencia que acepten valores NULL, mejoras en funciones con expresiones lambda y más características que puedes leer aquí. Próximamente escribiré un artículo con las nuevas mejoras y características de C# 10, da para un artículo ya que es muy importante 😉

Por su puesto esto que he mencionado es sólo la cereza del pastel, pero creo que es una buena base desde la cual puedes comenzar a experimentar y sobretodo sumergirte en esta hermosa plataforma que es .NET. Un Artículo sobre este mismo tema es el del buen José Manuel Alarcón disponible en: https://www.campusmvp.es/recursos/post/que-hay-de-nuevo-en-net-6.aspx.

Como habrás notado he dejado bastantes enlaces a la documentación oficial y referentes respetados, con lo cual tienes todo para poder volverte un capo. La pelota está ahora en tu cancha crack, ya sabes practicar y compartir el conocimiento es la mejor forma de aprender, así que te animo a hacerlo.

Foto de Connor Coyne en Unsplash

Así como en el fútbol hay que practicar y practicar para ser mejor, es lo mismo en toda disciplina crack, tu sigue dándole nomás, eventualmente mejorarás tus skills en programación si realmente lo quieres 💪.

El que comparte aprende el doble 😉

2 comentarios en «Que nos trae el nuevo .NET 6 y cómo aprovecharlo»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *