.NET Core
# .NET Core

.NET (anteriormente llamado .NET Core) es un framework informático administrado, gratuito y de código abierto para los sistemas operativos Windows, Linux y macOS. Es un sucesor multiplataforma de .NET Framework. El proyecto es desarrollado principalmente por Microsoft bajo la licencia MIT.

## Historia

.NET Core 1.0 fue anunciado el 12 de noviembre de 2014 y se lanzó el 27 de junio de 2016 junto con Microsoft Visual Studio 2015 Update 3, el cual habilitó el desarrollo de aplicaciones en .NET Core. .NET Core 1.0.4 y 1.1.1 fueron lanzados junto a NET Core Tools 1.0 y Visual Studio 2017 el 7 de marzo de 2017.

.NET Core 2.0 fue lanzado el 14 de agosto de 2017, junto con Visual Studio 2017 15.3, ASP.NET Core 2.0 y Entity Framework Core 2.0. .NET Core 2.1 fue lanzado el 30 de mayo de 2018. .NET Core 2.2 fue lanzado el 4 de diciembre de 2018.

.NET Core 3 fue anunciado el 7 de mayo de 2019 en la conferencia Microsoft Build. La versión 3.0.0 fue lanzada el 23 de septiembre de 2019. .NET Core 3 incluye soporte para aplicaciones de escritorio, inteligencia artificial, aprendizaje automático y aplicaciones de IoT.  La próxima versión de NET Core será .NET 5.

.NET Framework quedará en desuso, y .NET 5 será el único estándar .NET en el futuro, de ahí la eliminación de la marca "Core" y la omisión de la versión 4 para evitar confusiones con .NET Framework 4.x.

| Versión | Fecha de lanzamiento | Lanzado con | Última actualización | Última fecha de actualización | Soporte |
| - | - | - | - | - | - |
| .NET Core 1.0 | 27-06-2016 | Visual Studio 2015 Update 3 | 1.0.16 | 14-05-2019 | Finalizado el 27 de junio de 2019 |
| .NET Core 1.1 | 16-11-2016 | Visual Studio 2017 versión 15.0 | 1.1.13 | 14-05-2019 | Finalizado el 27 de junio de 2019 |
| .NET Core 2.0 | 14-08-2017 | Visual Studio 2017 versión 15.3 | 2.0.9 | 10-07-2018 | Finalizado el 1 de octubre de 2018 |
| .NET Core 2.1 | 30-05-2018 | Visual Studio 2017 versión 15.7 | 2.1.30 (LTS) | 19-08-2021 | Finalizado el 21 de agosto de 2021 |
| .NET Core 2.2 | 04-12-2018 | Visual Studio 2019 versión 16.0 | 2.2.8 | 19-11-2019 | Finalizado el 23 de diciembre de 2019 |
| .NET Core 3.0 | 23-09-2019 | Visual Studio 2019 versión 16.3 | 3.0.3 | 18-02-2020 | Finalizado el 3 de marzo de 2020 |
| .NET Core 3.1 | 03-12-2019 | Visual Studio 2019 versión 16.4 | 3.1.32 (LTS) | 13-12-2022 | Finalizado el 13 de diciembre de 2022 |
| .NET 5 | 10-11-2020 | Visual Studio 2019 versión 16.8 | 5.0.17 | 10-05-2022 | Finalizado el 10 de mayo de 2022 |
| .NET 6 | 08-11-2021 | Visual Studio 2022 versión 17.0 | 6.0.25 (LTS) | 14-11-2023 | Hasta el 12 de noviembre de 2024 |
| .NET 7 | 08-11-2022 | Visual Studio 2022 versión 17.4 | 7.0.14 | 14-11-2023 | Hasta el 14 de mayo de 2024 |
| .NET 8 | 14-11-2023 | Visual Studio 2022 versión 17.8 | 8.0.0 (LTS) | 14-11-2023 | Hasta el 10 de noviembre de 2026 |
| .NET 9 | Noviembre 2024 (proyectado) | | | | Mayo 2026 (proyectado) |

## Lenguajes soportados

.NET Core es totalmente compatible con C# y F# y desde la versión 3.0 con Visual Basic .NET

## Arquitecturas

.NET Core admite cuatro escenarios multiplataforma:

* ASP.NET Core: Desarrollo de aplicaciones web
* Aplicaciones de consola.
* Librería de clases.
* Windows Presentation Foundation: Permite el desarrollo de aplicaciones de escritorio con interfaces gráficas sobre Windows.

Con la introducción de .NET Core 3.0, se admitió el soporte para el desarrollo de aplicaciones de escritorio en Windows Forms y Windows Presentation Foundation para sistemas Windows;

.NET Core admite el uso de paquetes NuGet. A diferencia de .NET Framework, que utiliza Windows Update, .NET Core utiliza su propio sistema de gestión de paquetes para recibir actualizaciones.

Similar a cómo .NET Framework implementa la Infraestructura de lenguaje común (CLI) a través de Common Language Runtime (CLR) y la Framework Class Library (FCL), .NET core implementa CoreCLR y CoreFX, respectivamente.

Como implementación CLI del sistema de ejecución virtual (VES), CoreCLR es un sistema en tiempo de ejecución y máquina virtual para la ejecución de código gestionado.

.NET Core contiene CoreRT, el cual provee compilación anticipada en código nativo optimizado y un compilador justo a tiempo llamado RyuJIT.

CoreFX comparte gran parte de las bibliotecas estándar presentes en .NET Framework, sin embargo, también viene con sus propias bibliotecas que no forman parte de .NET Framework.

Una variante de .NET Core se usa para el desarrollo y ejecución de aplicaciones UWP en Windows 10.

La interfaz de línea de comandos de .NET Core ofrece un punto de entrada de ejecución para el sistema operativo y proporciona servicios de desarrollador como compilación y gestión de paquetes.

