stringtranslate.com

.NETO

La plataforma .NET (pronunciada como " punto net" ) es un marco de software informático administrado , libre y de código abierto para los sistemas operativos Windows , Linux y macOS . [4] El proyecto es desarrollado principalmente por empleados de Microsoft a través de la Fundación .NET y se publica bajo una licencia MIT . [3]

Historia

A finales de la década de 1990, Microsoft comenzó a desarrollar un lenguaje de programación y un entorno de ejecución de código administrado ( C# ) que presentó en conjunto como parte de la "plataforma .NET", con el entorno de ejecución central y las bibliotecas de software que comprendían .NET Framework .

En el corazón de la plataforma .NET se encuentra .NET Framework, un entorno de desarrollo y ejecución multilenguaje de alta productividad para crear y ejecutar servicios web con características importantes como herencia entre lenguajes y depuración. [5]

Poco después del anuncio del lenguaje C# en la Conferencia de Desarrolladores Profesionales de 2000 y de que se publicaran versiones preliminares de su software, Microsoft inició un esfuerzo de estandarización a través de ECMA para lo que denominó Infraestructura de Lenguaje Común . Mientras tanto, la empresa continuó con el desarrollo y el soporte de su propia implementación como software propietario de código cerrado .

El 12 de noviembre de 2014, Microsoft presentó .NET Core —un sucesor de código abierto y multiplataforma [6] [7] de .NET Framework— y publicó el código fuente para la implementación de .NET Core CoreCLR , fuente de "toda la pila de bibliotecas [...]" para .NET Core, [8] y anunció la adopción de un modelo de desarrollo de código abierto convencional ( "tipo bazar" ) bajo la administración de la .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", [9] e Immo Landwerth de Microsoft explicó 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 había sido 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 seleccionada anteriormente, explicando que hacía que el nombre clave Rotor fuera "una opción imposible" como 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). [10] [11] [12]

.NET Core 1.0 se lanzó el 27 de junio de 2016, [13] junto con Microsoft Visual Studio 2015 Update 3, que permite el desarrollo de .NET Core. [14] .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. [15]

.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. [16] .NET Core 2.1 se lanzó el 30 de mayo de 2018. [17] NET Core 2.2 se lanzó el 4 de diciembre de 2018. [18]

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

En noviembre de 2020, Microsoft lanzó .NET 5.0. [21] Se abandonó la marca "Core" y se omitió la versión 4.0 para evitar la fusión con .NET Framework, cuyas últimas versiones habían utilizado la versión 4.x para todas las versiones importantes (no de corrección de errores) desde 2010.

Aborda las preocupaciones sobre patentes relacionadas con .NET Framework [ cita requerida ] .

En noviembre de 2021, Microsoft lanzó .NET 6.0, [22] en noviembre de 2022 lanzó .NET 7.0, [23] y en noviembre de 2023 lanzó .NET 8.0. [24]

Alpine Linux , que principalmente admite y utiliza musl libc, [31] es compatible desde .NET Core 2.1. [32]

Windows Arm64 tiene soporte nativo desde .NET 5. Anteriormente, .NET en ARM significaba aplicaciones compiladas para la arquitectura x86 y ejecutadas a través de la capa de emulación ARM. [30]

Soporte de idiomas

.NET utiliza la Infraestructura de lenguaje común (CLI).

.NET es totalmente compatible con C# y F# (y C++/CLI a partir de la versión 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 el antiguo .NET Core). [33]

VB.NET se compila y se ejecuta en .NET, pero a partir de .NET Core 3.1, no se implementa el Visual Basic Runtime independiente. Microsoft anunció inicialmente que .NET Core 3 incluiría el Visual Basic Runtime, pero después de dos años, el cronograma para dicho soporte se actualizó a .NET 5. [34] [35]

Arquitectura

.NET admite los siguientes escenarios multiplataforma : aplicaciones web ASP.NET Core , aplicaciones de línea de comandos/consola, bibliotecas y aplicaciones de la Plataforma universal de Windows . Antes de .NET Core 3.0, no implementaba Windows Forms ni Windows Presentation Foundation (WPF), que representan la GUI estándar para el software de escritorio en Windows. [36] Sin embargo, a partir de .NET Core 3, comenzó a implementarlos junto con la Plataforma universal de Windows (UWP). [37] También es posible escribir aplicaciones gráficas multiplataforma utilizando .NET con el enlace de lenguaje GTK# para el kit de herramientas de widgets GTK .

.NET admite el uso de paquetes NuGet . A diferencia de .NET Framework , que se gestiona mediante Windows Update , .NET solía depender de su administrador de paquetes para recibir actualizaciones. [36] Sin embargo, desde diciembre de 2020, las actualizaciones de .NET también comenzaron a enviarse a través de Windows Update. [38]

Los dos componentes principales de .NET son CoreCLR y CoreFX, que son comparables al Common Language Runtime (CLR) y a la Framework Class Library (FCL) de la implementación de Common Language Infrastructure (CLI) de .NET Framework . [39]

Como una implementación del Sistema de Ejecución Virtual (VES) de CLI, CoreCLR es un entorno 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. [40] [a] .NET Core también contiene CoreRT, el entorno de ejecución nativo de .NET optimizado para integrarse en binarios nativos compilados por AOT . [42]

Como implementación de las bibliotecas estándar de CLI , [43] CoreFX comparte un subconjunto de las API de .NET Framework, sin embargo, también viene con sus propias API que no son parte de .NET Framework. [36] Se utiliza una variante de la biblioteca .NET para UWP . [44]

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

Diagrama de paquetes UML de la jerarquía de flujos en .NET

.NET MAUI

.NET Multi-platform App UI ( .NET MAUI , introducido con .NET 6) es un marco multiplataforma para crear aplicaciones nativas móviles y de escritorio con C# y lenguaje de marcado de aplicaciones extensible (XAML), [46] que también es compatible con Android e iOS .

Mascota

Dotnet Bot, la mascota de la comunidad para .NET

La mascota oficial de la comunidad de .NET es el bot .NET (estilizado como "bot dotnet" o "bot dotnet"). El bot dotnet sirvió como desarrollador sustituto para el registro inicial del código fuente de .NET cuando se convirtió en código abierto. [47] Desde entonces se ha utilizado como mascota oficial.

Notas

  1. ^ El prefijo "Ryu" es la palabra japonesa para "dragón" (, ryū ), y es una referencia al libro Compilers: Principles, Techniques, and Tools (comúnmente conocido como el libro del dragón, por un diseño de portada temprano), así como a un personaje del videojuego Street Fighter . [41]

Referencias

  1. ^ https://dotnet.microsoft.com/en-us/download/dotnet/8.0 . Consultado el 8 de octubre de 2024 . {{cite web}}: Falta o está vacío |title=( ayuda )
  2. ^ https://dotnet.microsoft.com/en-us/download/dotnet/9.0 . Consultado el 8 de octubre de 2024 . {{cite web}}: Falta o está vacío |title=( ayuda )
  3. ^ ab "core/LICENSE.TXT". GitHub . Consultado el 4 de junio de 2018 .
  4. ^ "Descargar .NET Core". microsoft.com . Microsoft . Consultado el 31 de octubre de 2017 .
  5. ^ "Microsoft ofrece las primeras herramientas para desarrolladores de la plataforma .NET para crear servicios web". 11 de julio de 2000. Consultado el 5 de noviembre de 2023 .
  6. ^ ".NET Core es el futuro de .NET". 6 de mayo de 2019.
  7. ^ ".NET Framework ha muerto: viva .NET 5". 7 de mayo de 2019.
  8. ^ "Por qué una empresa de desarrollo .NET podría ser el impulso perfecto | Pangea.ai". www.pangea.ai . Consultado el 8 de diciembre de 2022 .
  9. de Icaza, Miguel . "Códigos abiertos de Microsoft .NET y Mono". Blog personal de Miguel de Icaza . Consultado el 16 de noviembre de 2014 .
  10. ^ 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 .
  11. ^ "dotnet/corefx". GitHub . Consultado el 16 de noviembre de 2014 .
  12. ^ "Microsoft/referencesource". GitHub . Consultado el 16 de noviembre de 2014 .
  13. ^ Bright, Peter (27 de junio de 2016). "Se lanzó .NET Core 1.0, ahora con soporte oficial de Red Hat". Ars Technica . Condé Nast .
  14. ^ Foley, Mary Jo (27 de junio de 2016). "Microsoft presenta SQL Server, .NET Core en los entregables de Red Hat Enterprise Linux". ZDNet . CBS Interactive .
  15. ^ "Anuncio de .NET Core Tools 1.0 | Blog de .NET". Blogs.msdn.microsoft.com. 7 de marzo de 2017. Consultado el 18 de enero de 2020 .
  16. ^ ab "Anuncio de .NET Core 2.0". Blog de .NET . Microsoft. 14 de agosto de 2017.
  17. ^ ab "Anuncio de .NET Core 2.1". Blog de .NET . Microsoft. 30 de mayo de 2018.
  18. ^ ab "Anuncio de .NET Core 2.2". Blog de .NET . Microsoft. 4 de diciembre de 2018.
  19. ^ ".NET Core es el futuro de .NET". Blog de .NET . 6 de mayo de 2019. Consultado el 17 de mayo de 2019 .
  20. ^ "Novedades de .NET Core 3.0". Documentación de .NET . Consultado el 30 de diciembre de 2020 .
  21. ^ "Anuncio de .NET 5.0". Blog de .NET . 10 de noviembre de 2020 . Consultado el 21 de noviembre de 2020 .
  22. ^ ab Lander, Richard (8 de noviembre de 2021). "Anuncio de .NET 6: el .NET más rápido hasta el momento". Blog de .NET . Consultado el 6 de mayo de 2022 .
  23. ^ ab Douglas, Jon (8 de noviembre de 2022). ".NET 7 está disponible hoy". Blog de .NET . Consultado el 13 de enero de 2024 .
  24. ^ ab Seth, Gaurav (14 de noviembre de 2023). "Anuncio de .NET 8". Blog de .NET . Consultado el 13 de enero de 2024 .
  25. ^ "Política de soporte oficial de .NET Core". .NET . Microsoft.
  26. ^ "Anuncio de .NET Core 1.0". Blog de .NET . Microsoft. 27 de junio de 2016.
  27. ^ "Anuncio de .NET Core 1.1". Blog de .NET . Microsoft. 16 de noviembre de 2016.
  28. ^ "Anuncio de .NET Core 3.0". Blog de .NET . Microsoft. 23 de septiembre de 2019.
  29. ^ "Anuncio de .NET Core 3.1". Blog de .NET . Microsoft. 3 de diciembre de 2019.
  30. ^ ab "Anuncio de .NET 5.0". Blog de .NET . Microsoft. 10 de noviembre de 2020.
  31. ^ "Alpine 3.10.0 lanzado | Alpine Linux". alpinelinux.org . Consultado el 9 de junio de 2020 .
  32. ^ "dotnet/core". GitHub . Consultado el 9 de junio de 2020 .
  33. ^ ".NET framework admite diferentes lenguajes de programación" . Consultado el 21 de abril de 2022 .
  34. ^ "Visual Basic en .NET Core 3.0 | Blog de Visual Basic". Blogs.msdn.microsoft.com. 12 de octubre de 2019. Consultado el 18 de enero de 2020 .
  35. ^ "Compatibilidad de Visual Basic prevista para .NET 5.0 | Blog de Visual Basic". Blogs.msdn.microsoft.com. 11 de marzo de 2020. Consultado el 26 de agosto de 2020 .
  36. ^ abc Carter, Phillip; Knezevic, Zlatko (abril de 2016). ".NET Core: .NET se vuelve multiplataforma con .NET Core". Revista MSDN . Microsoft .
  37. ^ Lander, Rich (7 de mayo de 2018). ".NET Core 3 y compatibilidad con aplicaciones de escritorio de Windows". MSDN . Microsoft .
  38. ^ "Las actualizaciones de .NET Core 2.1, 3.1 y .NET 5.0 llegarán a Microsoft Update". Blog de .NET . 3 de diciembre de 2020 . Consultado el 15 de diciembre de 2020 .
  39. ^ "Comprensión de .NET Framework, .NET Core, .NET Standard y Future .NET". www.c-sharpcorner.com . Consultado el 1 de febrero de 2021 .
  40. ^ 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 .
  41. ^ "¿Por qué RyuJIT? ¿Cómo se eligió el nombre?". Blog del equipo de desarrollo de nuWave eSolutions . 25 de noviembre de 2014. Consultado el 21 de junio de 2016 .
  42. ^ Ramel, David (31 de agosto de 2020). "Encuesta de Microsoft: los desarrolladores se ven frenados por la falta de 'AOT nativo' en .NET Core -". Revista de Visual Studio . Archivado desde el original el 22 de octubre de 2020. Consultado el 1 de febrero de 2021 .
  43. ^ Landwerth, Immo (4 de diciembre de 2014). "Introducción a .NET Core". Blog de .NET Framework . Microsoft . Consultado el 27 de febrero de 2015 .
  44. ^ "Introducción a .NET Native y CoreRT". GitHub . 23 de abril de 2016.
  45. ^ "Introducción a la interfaz de línea de comandos". GitHub . 23 de abril de 2016.
  46. ^ "¿Qué es .NET MAUI? - .NET MAUI". learn.microsoft.com . Consultado el 8 de noviembre de 2022 .
  47. ^ Wang, Abel (9 de septiembre de 2020). ¿Qué es el bot dotnet? (Podcast). Microsoft. El evento ocurre a los 4 segundos en . Consultado el 9 de marzo de 2021 .

Lectura adicional

Enlaces externos