ASP.NET Core es un marco multiplataforma de código abierto y de alto rendimiento que tiene como finalidad compilar modernas aplicaciones conectadas a Internet y basadas en la nube.Con ASP.NET Core puede hacer lo siguiente:
- Compilar servicios y aplicaciones web, aplicaciones de IoT y back-ends móviles.
- Usar sus herramientas de desarrollo favoritas en Windows, macOS y Linux.
- Efectuar implementaciones locales y en la nube.
- Ejecutarlo en .NET Core o en .NET Framework.
¿Por qué debería usar ASP.NET Core?
Millones de desarrolladores han usado ASP.NET 4.x (y siguen usándolo) para crear aplicaciones web. ASP.NET Core es un nuevo diseño de ASP.NET 4.x que cuenta con cambios en la arquitectura que dan como resultado un marco más sencillo y modular.
ASP.NET Core ofrece las siguientes ventajas:
- Un caso unificado para crear API web y una interfaz de usuario web.
- Diseñado para la capacidad de prueba.
- Razor Pages hace que la codificación de escenarios centrados en páginas sean más sencillos y productivos.
- Capacidad para desarrollarse y ejecutarse en Windows, macOS y Linux.
- De código abierto y centrado en la comunidad.
- Integración de marcos del lado cliente modernos y flujos de trabajo de desarrollo.
- Un sistema de configuración basado en el entorno y preparado para la nube.
- Inserción de dependencias integrada.
- Una canalización de solicitudes HTTP ligera, modular y de alto rendimiento.
- Capacidad de hospedarse en IIS, Nginx, Apache, Docker o de autohospedarse en su propio proceso.
- Control de versiones de aplicaciones en paralelo con .NET Core como destino.
- Herramientas que simplifican el desarrollo web moderno.
Creación de API web e interfaces de usuario web mediante ASP.NET Core MVC
ASP.NET Core MVC proporciona características para crear API web y aplicaciones web:
- El patrón Modelo-Vista-Controlador (MVC) permite que se puedan hacer pruebas en las API web y en las aplicaciones web.
- Razor Pages es un modelo de programación basado en páginas que facilita la compilación de interfaces de usuario web y hace que sea más productiva.
- El marcado de Razor proporciona una sintaxis productiva para las páginas de Razor y las vistas de MVC.
- Los asistentes de etiquetas permiten que el código de servidor participe en la creación y la representación de elementos HTML en archivos de Razor.
- La compatibilidad integrada para varios formatos de datos y la negociación de contenidospermite que las API web lleguen a una amplia gama de clientes, como los exploradores y los dispositivos móviles.
- El enlace de modelo asigna automáticamente datos de solicitudes HTTP a parámetros de método de acción.
- La validación de modelos efectúa una validación del lado cliente y del lado servidor de forma automática.
Desarrollo del lado del cliente
ASP.NET Core se integra perfectamente con bibliotecas y marcos populares del lado cliente, que incluyen Blazor, Angular, React y Bootstrap. Para más información, consulte Introducción a Blazor en ASP.NET Core y los temas relacionados en Client-side development (Desarrollo del lado cliente).
ASP.NET Core con .NET Framework como destino
ASP.NET Core 2.x puede tener como destino .NET Core o .NET Framework. Las aplicaciones de ASP.NET Core que tienen como destino .NET Framework no son multiplataforma, sino que solo se ejecutan en Windows. Por lo general, ASP.NET Core 2.x está formado por bibliotecas de .NET Standard. Las bibliotecas escritas con .NET Standard 2.0 se ejecutan en cualquier plataforma .NET que implementa .NET Standard 2.0.
ASP.NET Core 2.x se admite en las versiones de .NET Framework que implementan .NET Standard 2.0:
- Se recomienda encarecidamente .NET Framework 4.7.1 y posterior.
- .NET Framework 4.6.1 y posterior.
ASP.NET Core 3.0 y versiones posteriores solo se ejecutan en .NET Core. Para obtener más información sobre este cambio, vea A first look at changes coming in ASP.NET Core 3.0(Descripción general de los cambios que se aplicarán a ASP.NET Core 3.0).
El uso de .NET Core como destino cuenta con varias ventajas que van en aumento con cada versión. Entre las ventajas del uso de .NET Core en vez de .NET Framework se incluyen las siguientes:
- Multiplataforma. Ejecución en macOS, Linux y Windows.
- Rendimiento mejorado
- Control de versiones en paralelo.
- Nuevas API.
- Código Abierto
Estamos trabajando intensamente para cerrar la brecha de API entre .NET Framework y .NET Core. El paquete de compatibilidad de Windows ha permitido que miles de API solo de Windows estén disponibles en .NET Core. Estas API no estaban disponibles en .NET Core 1.x.
Te esperamos en los siguientes artículos en donde hablaremos mas acerca de estos temas, los cuales hoy en día son de vital importancia en el mundo de la tecnología.