De Wikipedia, la enciclopedia libre
  (Redirigido desde CoreFX )
Saltar a navegación Saltar a búsqueda

.NET (anteriormente llamado .NET Core ) es un marco de software de computadora administrado , gratuito y de código abierto para los sistemas operativos Windows , Linux y macOS . [4] Es un sucesor multiplataforma [5] de .NET Framework . [6] El proyecto es desarrollado principalmente por empleados de Microsoft a través de .NET Foundation y publicado bajo la licencia MIT . [3]

Historia [ editar ]

El 12 de noviembre de 2014, Microsoft anunció .NET Core, en un esfuerzo por incluir soporte multiplataforma para .NET, incluidos Linux y macOS, fuente para la implementación de .NET Core CoreCLR, fuente para "toda la pila de bibliotecas […]" para .NET Core, y la adopción de un modelo de desarrollo de código abierto convencional (similar a un "bazar") bajo la administración de consolación de .NET Foundation . Miguel de Icaza describe .NET Core como una "versión rediseñada de .NET que se basa en la versión simplificada de las bibliotecas de clases", [7]e Immo Landwerth de Microsoft explicaron que .NET Core sería "la base de todas las futuras plataformas .NET". En el momento del anuncio, el lanzamiento inicial del proyecto .NET Core se había sembrado con un subconjunto del código fuente de las bibliotecas y coincidió con la renovación de la licencia de la fuente de referencia .NET existente de Microsoft lejos de las restricciones de Ms-RSL. Landwerth reconoció las desventajas de la licencia compartida previamente seleccionada, explicando que convirtió el nombre en clave Rotor en un proyecto de código abierto desarrollado por la comunidad porque no cumplía con los criterios de una licencia aprobada por la Iniciativa de Código Abierto (OSI). [8] [9] [10]

.NET Core 1.0 se lanzó el 27 de junio de 2016 [11] junto con Microsoft Visual Studio 2015 Update 3, que permite el desarrollo de .NET Core. [12] .NET Core 1.0.4 y .NET Core 1.1.1 se lanzaron junto con .NET Core Tools 1.0 y Visual Studio 2017 el 7 de marzo de 2017. [13]

.NET Core 2.0 se lanzó el 14 de agosto de 2017, junto con Visual Studio 2017 15.3, ASP.NET Core 2.0 y Entity Framework Core 2.0. [14] .NET Core 2.1 se lanzó el 30 de mayo de 2018. [15] NET Core 2.2 se lanzó el 4 de diciembre de 2018. [16]

.NET Core 3 se lanzó el 23 de septiembre de 2019. [17] .NET Core 3 agrega soporte para el desarrollo de aplicaciones de escritorio de Windows [18] y mejoras de rendimiento significativas en toda la biblioteca base.

En noviembre de 2020, Microsoft lanzó .NET 5.0 que reemplazó a .NET Framework . Se eliminó la marca "Core" y se omitió la versión 4.0 para evitar la fusión con .NET Framework. Aborda las preocupaciones de patentes relacionadas con .NET Framework. [19]

.NET Core 2.1 y posterior, es decir, incluido .NET 5, es compatible con Alpine Linux (es decir, musl libc que usa [28] ). [29]

A partir de .NET 5, Windows Arm64 es compatible de forma nativa. Anteriormente, .NET en ARM era en realidad programas x86 emulados. [25]

Soporte de idiomas [ editar ]

.NET usa Common Language Infrastructure (CLI)

.NET es totalmente compatible con C # y F # (y C ++ / CLI a partir de 3.1; solo habilitado en Windows) y es compatible con Visual Basic .NET (para la versión 15.5 en .NET Core 5.0.100-preview.4, y algunas versiones antiguas compatibles con versiones antiguas .NET Core).

VB.NET se compila y se ejecuta en .NET, pero a partir de .NET Core 3.1, el tiempo de ejecución de Visual Basic independiente no está implementado. Microsoft anunció inicialmente que .NET Core 3 incluiría Visual Basic Runtime, pero después de dos años, la línea de tiempo para dicho soporte se actualizó a .NET 5. [30] [31]

Arquitectura [ editar ]

.NET admite cuatro escenarios multiplataforma : aplicaciones web ASP.NET Core ; aplicaciones de línea de comandos; bibliotecas; y aplicaciones de la Plataforma universal de Windows . Antes de .NET Core 3.0, no implementaba Windows Forms o Windows Presentation Foundation (WPF), que representan la GUI estándar para el software de escritorio en Windows. [32] [33] Ahora, sin embargo, .NET Core 3 es compatible con las tecnologías de escritorio Windows Forms, WPF y la Plataforma universal de Windows (UWP). [34] También es posible escribir aplicaciones gráficas multiplataforma usando .NET con GTK # language-binding para GTK kit de herramientas de widgets.

.NET admite el uso de paquetes NuGet . A diferencia de .NET Framework , que se mantiene mediante Windows Update , .NET depende de su administrador de paquetes para recibir actualizaciones. [32] [33] A partir de diciembre de 2020, sin embargo, las actualizaciones de .NET también comenzaron a entregarse a través de Windows Update. [35]

Los dos componentes principales de .NET son CoreCLR y CoreFX, que son comparables a la Common Language Runtime (CLR) y la biblioteca de clases de Marco (FCL) del .NET Framework 's Common Language Infrastructure aplicación (CLI). [36]

Como implementación CLI de Virtual Execution System (VES), CoreCLR es un tiempo de ejecución completo y una máquina virtual para la ejecución administrada de programas CLI e incluye un compilador justo a tiempo llamado RyuJIT. [37] [a] .NET Core también contiene CoreRT, el tiempo de ejecución nativo de .NET optimizado para integrarse en binarios nativos compilados por AOT . [39]

Como implementación CLI de las bibliotecas estándar fundamentales , [40] CoreFX comparte un subconjunto de las API de .NET Framework; sin embargo, también incluye sus propias API que no forman parte de .NET Framework. [32] Se utiliza una variante de la biblioteca .NET para UWP . [41]

La interfaz de línea de comandos .NET ofrece un punto de entrada de ejecución para los sistemas operativos y proporciona servicios para desarrolladores como compilación y administración de paquetes. [42]

Mascota [ editar ]

bot dotnet, la mascota comunitaria de .NET

La mascota oficial de la comunidad de .NET es .NET Bot (estilizado como "dotnet bot" o "dotnet-bot"). El bot dotnet sirvió como desarrollador de marcador de posición para el registro inicial del código fuente .NET cuando era de código abierto. [43] Desde entonces se ha utilizado como mascota oficial.

Notas [ editar ]

  1. ^ El prefijo "Ryu" es la palabra japonesa para "dragón" (竜, ryū ), y es una referencia al libro Compiladores: Principios, técnicas y herramientas (comúnmente conocido como el libro del dragón, de un diseño de portada temprano), así como a un personaje del videojuego Street Fighter . [38]

Referencias [ editar ]

  1. ^ https://dotnet.microsoft.com/download/dotnet ; consultado: 7 de abril de 2021; fecha de publicación: 6 de abril de 2021.
  2. ^ https://dotnet.microsoft.com/download/dotnet/6.0 .
  3. ^ a b "núcleo / LICENCIA.TXT" . GitHub . Consultado el 4 de junio de 2018 .
  4. ^ "Descargar .NET Core" . microsoft.com . Microsoft . Consultado el 31 de octubre de 2017 .
  5. ^ ".NET Core es el futuro de .NET" .
  6. ^ ".NET Framework está muerto - viva .NET 5" .
  7. de Icaza, Miguel . "Microsoft Open Sources .NET y Mono" . Blog personal de Miguel de Icaza . Consultado el 16 de noviembre de 2014 .
  8. ^ Landwerth, Immo (12 de noviembre de 2014). ".NET Core es de código abierto" . Blog de .NET Framework . Microsoft . Consultado el 30 de diciembre de 2014 .
  9. ^ "dotnet / corefx" . GitHub . Consultado el 16 de noviembre de 2014 .
  10. ^ "Microsoft / referenceource" . GitHub . Consultado el 16 de noviembre de 2014 .
  11. ^ Bright, Peter (27 de junio de 2016). ".NET Core 1.0 lanzado, ahora oficialmente compatible con Red Hat" . Ars Technica . Condé Nast .
  12. ^ Foley, Mary Jo (27 de junio de 2016). "Microsoft muestra SQL Server, .NET Core en entregables de Red Hat Enterprise Linux" . ZDNet . CBS Interactive .
  13. ^ "Anuncio de .NET Core Tools 1.0 | Blog de .NET" . Blogs.msdn.microsoft.com . Consultado el 18 de enero de 2020 .
  14. ^ a b "Anuncio de .NET Core 2.0" . Blog de .NET. 14 de agosto de 2017.
  15. ^ a b "Anuncio de .NET Core 2.1" . blogs.msdn.microsoft.com . Consultado el 15 de febrero de 2019 .
  16. ^ a b "Anuncio de .NET Core 2.2" . blogs.msdn.microsoft.com . Consultado el 15 de febrero de 2019 .
  17. ^ ".NET Core es el futuro de .NET" . Blog de .NET . 2019-05-06 . Consultado el 17 de mayo de 2019 .
  18. ^ "Novedades de .NET Core 3.0" . Documentación .NET . Consultado el 30 de diciembre de 2020 .
  19. ^ "Anuncio de .NET 5.0" . Blog de .NET . 10 de noviembre de 2020 . Consultado el 21 de noviembre de 2020 .
  20. ^ "Política de soporte oficial de .NET Core" . .NET . Microsoft.
  21. ^ "Anuncio de .NET Core 1.0" . Blog de .NET . Microsoft. 27 de junio de 2016.
  22. ^ "Anuncio de .NET Core 1.1" . Blog de .NET . Microsoft. 16 de noviembre de 2016.
  23. ^ "Anuncio de .NET Core 3.0" . Blog de .NET . Microsoft. 23 de septiembre de 2019.
  24. ^ "Anuncio de .NET Core 3.1" . Blog de .NET . Microsoft. 3 de diciembre de 2019.
  25. ^ a b c "Anuncio de .NET 5.0" . Blog de .NET . Microsoft. 10 de noviembre de 2020.
  26. ^ a b c "Presentación de .NET 5" . Blog de .NET . 2019-05-06 . Consultado el 9 de enero de 2021 .
  27. ^ "Política de soporte oficial de .NET Core y .NET 5" . Microsoft . Consultado el 16 de marzo de 2021 .
  28. ^ "Lanzamiento de Alpine 3.10.0 | Alpine Linux" . alpinelinux.org . Consultado el 9 de junio de 2020 .
  29. ^ "dotnet / core" . GitHub . Consultado el 9 de junio de 2020 .
  30. ^ "Visual Basic en .NET Core 3.0 | Blog de Visual Basic" . Blogs.msdn.microsoft.com. 2019-10-12 . Consultado el 18 de enero de 2020 .
  31. ^ "Soporte de Visual Basic planeado para .NET 5.0 | Blog de Visual Basic" . Blogs.msdn.microsoft.com. 2020-03-11 . Consultado el 26 de agosto de 2020 .
  32. ^ a b c Carter, Phillip; Knezevic, Zlatko (abril de 2016). ".NET Core - .NET pasa a ser multiplataforma con .NET Core" . Revista MSDN . Microsoft .
  33. ↑ a b Schmelzer, Jay (18 de noviembre de 2015). "Descripción general de .NET 2015" . Canal 9 . Microsoft . 0:07:32.
  34. ^ Lander, Rich (7 de mayo de 2018). ".NET Core 3 y soporte para aplicaciones de escritorio de Windows" . MSDN . Microsoft .
  35. ^ "Las actualizaciones de .NET Core 2.1, 3.1 y .NET 5.0 están llegando a Microsoft Update" . Blog de .NET . 2020-12-03 . Consultado el 15 de diciembre de 2020 .
  36. ^ "Comprensión de .NET Framework, .NET Core, .NET Standard y Future .NET" . www.c-sharpcorner.com . Consultado el 1 de febrero de 2021 .
  37. ^ Landwerth, Immo (3 de febrero de 2015). "CoreCLR ahora es de código abierto" . Blog de .NET Framework . Microsoft . Consultado el 27 de febrero de 2015 .
  38. ^ "¿Por qué RyuJIT? ¿Cómo se eligió el nombre?" . Blog del equipo de desarrollo de nuWave eSolutions . Consultado el 21 de junio de 2016 .
  39. Ramel, David (31 de agosto de 2020). "Encuesta de Microsoft: desarrolladores detenidos por falta de 'AOT nativo' en .NET Core -" . Revista Visual Studio . Archivado desde el original el 22 de octubre de 2020 . Consultado el 1 de febrero de 2021 .
  40. ^ Landwerth, Immo (4 de diciembre de 2014). "Introducción a .NET Core" . Blog de .NET Framework . Microsoft . Consultado el 27 de febrero de 2015 .
  41. ^ "Introducción a .NET Native y CoreRT" . 23 de abril de 2016.
  42. ^ "Introducción a CLI" . 23 de abril de 2016.
  43. ^ Wang, Abel (9 de septiembre de 2020). ¿Qué es el bot dotnet? (Pódcast). Microsoft. El evento ocurre a los 4 segundos en . Consultado el 9 de marzo de 2021 .

Lectura adicional [ editar ]

  • Arif, Hammad; Qureshi, Habib (2020). Adopción de .NET 5: Comprenda las arquitecturas modernas, las mejores prácticas de migración y las nuevas características de .NET 5 . Packt Publishing. ISBN 978-1800560567.
  • Metzgar, Dustin (2018). .NET Core en acción . Publicaciones Manning. ISBN 978-1617294273.
  • Precio, Mark J. (2020). C # 9 y .NET 5: desarrollo multiplataforma moderno . Packt Publishing. ISBN 978-1800568105.
  • Precio, Mark J. (2019). C # 8.0 y .NET Core 3.0: desarrollo multiplataforma moderno . Packt Publishing. ISBN 978-1788478120.
  • Precio, Mark J. (2017). C # 7.1 y .NET Core 2.0: desarrollo multiplataforma moderno . Packt Publishing. ISBN 978-1788398077.
  • Precio, Mark J. (2017). C # 7 y .NET Core: desarrollo multiplataforma moderno . Packt Publishing. ISBN 978-1787129559.
  • Precio, Mark J. (2016). C # 6 y .NET Core 1.0: Desarrollo multiplataforma moderno . Packt Publishing. ISBN 978-1785285691.
  • Zimarev, Alexey (2019). Diseño práctico basado en dominios con .NET Core . Packt Publishing. ISBN 978-1788834094.

Enlaces externos [ editar ]

  • Página web oficial
  • Descripción general de .NET Framework (MSDN)
  • Repositorio de .NET Github