5 herramientas y tecnologías de desarrollo de Microsoft para explorar en 2020

A fines de 2019, vale la pena mirar hacia el futuro mientras elabora sus planes de desarrollo de aplicaciones y sus hojas de ruta tecnológicas. Los últimos años han proporcionado muchos cambios para cualquiera que construya en las muchas plataformas de Microsoft, y ese ritmo no se está desacelerando.

¿Qué debería mirar en 2020 y por qué? Aquí hay cinco opciones para Windows, Azure y más. No son los únicos, pero deberían iniciarlo en el camino hacia un conjunto más moderno de plataformas y herramientas de desarrollo.

Inicie la transición a .NET 5

Quizás el mayor desafío al que se enfrenta cualquiera que cree código .NET es el cambio del antiguo .NET Framework a .NET Core con el lanzamiento de .NET 5 hacia fines de 2020. Unir las dos hebras de .NET tiene sentido, incluso si requiere perder algunas API más antiguas. Microsoft ha publicado una lista de lo que hará y no hará la transición en el repositorio .NET GitHub. Algunas de las API que faltan pasarán a implementaciones comunitarias, mientras que otras obtendrán alternativas más modernas.

Si admite y desarrolla el código de .NET Framework, 2020 le brinda una buena oportunidad para explorar cómo se entregará el código en el futuro. La versión actual de .NET Core 3.1 es una versión de soporte a largo plazo y, junto con las bibliotecas .NET Standard, es compatible con muchas de las API que estarán en .NET 5. La migración de código a .NET Core 3.1 le brinda la oportunidad de explorar no solo los cambios que se deben realizar en su código, sino también para crear una nueva cadena de herramientas.

El futuro de .NET Core es multiplataforma, con Blazor en WebAssembly y del lado del servidor a través de ASP.NET y Razor; .NET Core en Windows, macOS y Linux; y con Xamarin en dispositivos móviles. Mover código a .NET 5 no solo se trata de admitir futuras versiones de Windows, es una oportunidad para entregarlo a muchas más plataformas y usuarios.

Comience a explorar WinUI 3.0

2020 es cuando cambia la plataforma de Windows. Microsoft finalmente está dividiendo el SDK de Windows en dos: separando los componentes de la interfaz de usuario en WinUI y dejando las funciones a nivel del sistema operativo. Con la próxima versión de WinUI 3.0, los componentes de la interfaz de usuario podrán enviarse con una cadencia diferente a la del sistema operativo, agregando nuevos controles a medida que se publiquen. Serán compatibles con Windows 10 para su uso en aplicaciones Win32 y WinForms, así como en aplicaciones de la Plataforma universal de Windows (UWP).

WinUI también será compatible con navegadores modernos como el nuevo Edge basado en Chromium a través de una asociación con la Plataforma Uno, que trasladará los controles a WebAssembly, lo que permitirá que WinUI llegue a una audiencia mucho más amplia. Las aplicaciones UWP existentes podrán usar WinUI 3.0 con cambios mínimos, y el código C ++ podrá usar nuevos controles para agregar soporte para el lenguaje de diseño Fluent de Microsoft.

Utilice AKS para aplicaciones nativas de la nube

La creación de aplicaciones modernas en la nube significa la creación de aplicaciones distribuidas basadas en microservicios, la implementación de código en contenedores cuando y donde sea necesario y la gestión de recursos para responder a la demanda. Todo eso se suma a la necesidad de un orquestador para administrar el escalado y la implementación. Puede implementar Kubernetes usted mismo y entrar en el meollo de los archivos de configuración de kubectl y YAML. Sin embargo, hay una alternativa en Azure: una opción administrada con Azure Kubernetes Service, tanto para contenedores de Linux como de Windows.

Esto simplifica la implementación de sus aplicaciones y servicios en contenedores, utilizando el conocido portal de Azure, con acceso a las funciones de red propias de Azure y la capacidad de trabajar con herramientas como Terraform de HashiCorp. Otras opciones incluyen el control de acceso basado en roles para bloquear el acceso a los recursos, reduciendo su exposición a la seguridad.

AKS escalará automáticamente su clúster de Kubernetes hacia arriba y hacia abajo, y se integra con las herramientas de monitoreo de Azure para que pueda vigilar de cerca sus operaciones de servicio. El resultado es una combinación de una plataforma de Kubernetes pura que se puede administrar con las herramientas de Kubernetes para un control detallado y el conocido portal de Azure con acceso administrado a otros servicios de Azure. Esa integración de servicios puede simplificar las operaciones de Kubernetes, por ejemplo, con acceso directo al almacenamiento de Azure para datos persistentes y soporte para el propio registro de contenedores de Azure.

Si está creando aplicaciones de Kubernetes en Azure, realmente no hay alternativa, especialmente si considera servicios como Azure Dev Spaces. Desarrollado sobre AKS, Dev Spaces le brinda un entorno privado y seguro para crear, probar y depurar su código nativo de la nube sin afectar los servicios de producción.

Desarrolle para la nube en su computadora portátil con WSL 2 y Docker

No fue hace tanto tiempo que no veías nada más que una línea de logotipos brillantes de Apple en cualquier evento de desarrolladores. Ahora es una alineación mucho más mixta, ya que Microsoft ha trabajado para que los desarrolladores vuelvan a Windows, brindando acceso rápido a lenguajes populares como Python, un editor de programadores fácil de personalizar en Visual Studio Code, una nueva Terminal de Windows y, la mayoría lo que es más importante, el subsistema de Windows para Linux (WSL).

Inicialmente emulando un kernel de Linux, WSL pronto se actualizará con su propio kernel de Linux ejecutándose junto con Windows. Con la intención de simplificar la creación y prueba de aplicaciones en la nube en una PC, WSL 2 también incluirá un sistema de archivos Linux al que se puede acceder desde Windows y soporte para edición remota usando Visual Studio Code. Docker ha comenzado a probar una versión de Docker Desktop para WSL 2. Esto agrega compatibilidad nativa de contenedores de Linux a Windows, usando archivos de docker familiares para construir e implementar instancias de contenedores locales, y código para trabajar directamente con su contenido.

La combinación de Windows, Linux y Docker proporciona una base flexible para construir un poderoso conjunto de herramientas de desarrollo de un extremo a otro que usa cada plataforma por completo y le brinda la flexibilidad para trabajar de la manera que desee mientras sigue entregando código a repositorios comunes.

IoT seguro con Azure Sphere

Ha pasado un tiempo desde la última vez que miré a Azure Sphere, la plataforma de Microsoft para la IoT segura. Combinar la seguridad basada en hardware con un kernel personalizado de Linux y una plataforma de administración alojada en la nube es una forma de garantizar que el sistema operativo y las aplicaciones que se ejecutan en su hardware no hayan sido manipuladas y que el código no se pueda cambiar o insertar. por terceros maliciosos.

Una placa de desarrollo que utiliza el microcontrolador ARM seguro de Microsoft ha estado disponible desde hace algún tiempo, y recientemente se le han unido alternativas más baratas. Está claro que Azure Sphere ahora está listo para usar en sus productos, con módulos listos para producción y SOC ahora disponibles, para que pueda construir su propio hardware a su alrededor. No necesita nuevas herramientas de desarrollo; todo el desarrollo de Azure Sphere se lleva a cabo en el conocido Visual Studio.

Uno de los desarrollos más interesantes es un conjunto de unidades guardianas basadas en Esfera que pueden funcionar con controladores industriales existentes, agregando una capa de protección al integrar PLC y otros sistemas industriales existentes con sus aplicaciones, lo que le permite conectar dispositivos que pueden haber sido considerados. demasiado arriesgado para agregar a una plataforma de IoT en el pasado.