Implementaciones de .NET
Una aplicación de .NET se desarrolla en una o varias implementaciones de .NET. Las implementaciones de .NET incluyen .NET Framework, .NET 5 y versiones posteriores (incluido .NET Core), y Mono.
Cada implementación de .NET incluye los siguientes componentes:
- Uno o más entornos de ejecución, por ejemplo, CLR de .NET Framework y CLR de .NET 8.
- Una biblioteca de clases, por ejemplo, la biblioteca de clases base de .NET Framework y la biblioteca de clases base de .NET 8.
- Opcionalmente, uno o más marcos de trabajo de la aplicación, por ejemplo, ASP.NET, Windows Forms y Windows Presentation Foundation (WPF) se incluyen en .NET Framework y .NET 5 y versiones posteriores.
- Opcionalmente, herramientas de desarrollo. Algunas herramientas de desarrollo se comparten entre varias implementaciones.
Microsoft admite cuatro implementaciones de .NET:
- .NET 5 y versiones posteriores
- .NET Framework
- Mono
- UWP
.NET, anteriormente conocido como .NET Core, es actualmente la implementación principal. .NET 8 se basa en una única base de código que admite varias plataformas y muchas cargas de trabajo, como aplicaciones de escritorio de Windows y aplicaciones de consola multiplataforma, servicios en la nube y sitios web. Algunas cargas de trabajo, como las herramientas de compilación de WebAssembly de .NET, están disponibles como instalaciones opcionales.
.NET 5 y versiones posteriores
.NET y versiones posteriores, anteriormente conocido como .NET Core, es una implementación multiplataforma de .NET diseñada para controlar las cargas de trabajo de servidor y en la nube a gran escala. También admite otras cargas de trabajo, incluidas las aplicaciones de escritorio. Se ejecuta en Windows, macOS y Linux. Implementa .NET Standard, de forma que cualquier código que tenga como destino .NET Standard se puede ejecutar en .NET. ASP.NET Core, Windows Forms y Windows Presentation Foundation (WPF) se ejecutan en .NET 5.
.NET 8 es la versión más reciente de esta implementación de .NET.
Para obtener más información, vea los siguientes recursos:
- Introducción a .NET
- Diferencias entre .NET y .NET Framework en cuanto a aplicaciones de servidor
- .NET 5 y versiones posteriores, y .NET Standard
.NET Framework
.NET Framework es la implementación de .NET original que existe desde 2002. Las versiones 4.5 y posteriores implementan .NET Standard, de forma que el código que tiene como destino .NET Standard se puede ejecutar en esas versiones de .NET Framework. Contiene API específicas de Windows adicionales, como API para el desarrollo de escritorio de Windows con Windows Forms y WPF. .NET Framework está optimizado para crear aplicaciones de escritorio de Windows.
Para obtener más información, vea la guía de .NET Framework.
Mono
Mono es una implementación de .NET que se usa principalmente cuando se requiere un entorno de ejecución pequeño. Es el entorno de ejecución que activa las aplicaciones Xamarin en Android, macOS, iOS, tvOS y watchOS, y se centra principalmente en una superficie pequeña. Mono también proporciona juegos creados con el motor de Unity.
Admite todas las versiones de .NET Standard publicadas actualmente.
Históricamente, Mono implementaba la API de .NET Framework más grande y emulaba algunas de las funciones más populares en Unix. A veces, se usa para ejecutar aplicaciones de .NET que se basan en estas capacidades en Unix.
Mono se suele usar con un compilador Just-In-Time, pero también incluye un compilador estático completo (compilación Ahead Of Time) que se usa en plataformas como iOS.
Para obtener más información, vea la documentación de Mono.
Plataforma universal de Windows (UWP)
UWP es una implementación de .NET que se usa para compilar aplicaciones Windows modernas y táctiles y software para Internet de las cosas (IoT). Se ha diseñado para unificar los diferentes tipos de dispositivos de destino, incluidos equipos, tabletas, teléfonos e incluso la consola Xbox. UWP proporciona muchos servicios, como una tienda de aplicaciones centralizada, un entorno de ejecución (AppContainer) y un conjunto de API de Windows para usar en lugar de Win32 (WinRT). Pueden escribirse aplicaciones en C++, C#, Visual Basic y JavaScript.
Para obtener más información, vea Introducción a la Plataforma universal de Windows.