En septiembre de 2021, Microsoft lanzó la preview 8 de .NET MAUI. Este lanzamiento no fue una actualización mas, sino que conllevaba aparejadas decisiones importantes para todos los desarrolladores.
En primer lugar, es que la versión final no será lanzada en noviembre de este año, tal y como inicialmente estaba planeado, si no que si no hay mas retrasos se lanzará al público general durante el inicio del segundo trimestre del año que viene. Según palabras de Scott Hunter, director de program management en Microsoft “El equipo de .NET ha estado trabajando duro con la comunidad y estamos comprometidos con su lanzamiento. Lamentablemente, .NET MAUI no estará lista para producción con .NET 6 en noviembre. Queremos ofrecer la mejor experiencia, rendimiento y calidad desde el primer día a nuestros usuarios y, para ello tenemos que retrasar el calendario”;
En segundo lugar, la instalación de la preview esta ahora completamente integrada dentro de la instalación del Visual Studio, empezando desde la versión VS2022 Preview 4. La API de Android necesaria es ahora la versión 31 (Android S) y OpenJDK 11 es requerido para compilar la aplicación Android. También por último dentro de este punto, es que Windows ahora es parte del proyecto único. Se acabaron los proyectos múltiples, solo un proyecto para los 4 tipos de plataforma.
Visual Studio 2022 Preview 4 Updates
La nueva versión de Visual Studio viene con mas funcionalidad y soporte de Hot Reload, notable incremento de rendimiento, mejoras en la depuración etc.
Estas mejoras incluyen:
- Buscar en ficheros ahora es hasta un 300% mas rápido
- Casi un 12% de mejora en la coloración semántica en el IntelliSense de C++
- Optimizaciones del procesado de la base de datos de símbolos
- Casi una mejora de un 200% en la velocidad al expandir elementos C++ en el explorador de soluciones
Con esta versión de Visual Studio, Hot Reload avanza en diferentes frentes, incluyendo paginas Razor y CSS, entre las diferentes mejoras algunas de las principales son las siguientes.
- Mejora en el soporte para XAML Hot Reload para aplicaciones .NET MAUI
- Mejora en el soporte para usar XAML y .NET Hot Reload en la misma sesión para aplicaciones WPF y WinUI.
- Mejoras en los escenarios ASP.NET
- Nuevo botón Hot Reload que permite aplicar los cambios inmediatamente en ejecución
- Reinicio de aplicaciones mejorado que permite reiniciar la aplicación rápidamente y ver los cambios introducidos, si Hot Reload no soporta hacer la actualización en tiempo de ejecución.
- Hot Reload para ficheros Razor, por lo que si se están realizando cambios en el código C# y se pulsa guardar los cambios automáticamente tienen efecto en la aplicación ASP.NET sin tener que recompilar manualmente.
- Hot Reload para CSS donde una vez que se realiza algún cambio en el fichero CSS, este es sintácticamente corregido y el programa se verá automáticamente actualizado independientemente de si se ha guardado o no
.NET MAUI SDK Updates
La actualización más notable es que se tendrá que migrar las aplicaciones para implementar el patrón Host Builder de .NET. A partir de ahora estos cambios permitirán estar alineados con como ASP.NET y Blazor hacen esto mediante la clase MauiProgram que crea y devuelve una MauiApp. Cada plataforma llama ahora a MauiProgram.CreateMauiApp
La ejecución del código de la aplicación siempre partirá de la plataforma de destino y luego, en algún momento, el control se transfiere a este código multiplataforma (compartido).
Inicio de la aplicación en Android
Inicio de la aplicación en iOS
Inicio de la aplicación – Patrón Host Builder
Próximos hitos
.NET MAUI Preview 9 (Octubre 2021)
- Corrección de errores
- Borders, Corners, Shadows
- Unión Xamarin Essentials y Forms API
- Mejora en las fuentes
- Image source – servicio para la carga de imágenes, iOS caching, GIF corrección de errores, refactorización del handler
- Refactorización Layouts – AndExpand
- Port remaining handlers
.NET MAUI Preview 10 (Noviembre 2021)
- Corrección de errores
- Cross-platform eventos ciclo de vida
- Native platform eventos ciclo de vida (cont.)
- Refactorización de Microsoft.Maui.Graphics
.NET MAUI Preview 11 (Diciembre 2021)
- Corrección de errores
- Menús Desktop
- Mejoras en Native embedding
- Soporte Multi-Ventana
- Mejoras en el picker para macOS
- Mejoras en el proyecto único multi plataforma
- Soporte de permisos en el proyecto único
- Mejoras en el recorte
- Soporte en el desempaquetado Windows
.NET MAUI Release Candidate (Q1 2022)
- Corrección de errores
- Estilo visual por defecto consistente entre las distintas plataformas
- Controles pantalla dual
- Fluent look para controles Windows
- Soporte de mapas
- Visual Studio – implemtación de mejoras en el soporte de Hot Reload, Live Visual tree, etc
.NET MAUI GA (Q2 2022)
- Corrección de errores