Bienvenido .NET MAUI
la evolución de Xamarin.Forms
Vicente G. Guzmán Lucio
Application Development Specialist
luciomsp@geeks.ms
@LucioMSP
Agenda
- Descripción general de .NET MAUI
- Mejoras en el sistema de proyectos
- Desarrollo más rápido con VS 2022
- Análisis profundo de .NET MAUI
Viaje en el tiempo…
¿Qué es Multi-platform App UI?
.NET MAUI es la forma más productiva de
desarrollar aplicaciones nativas que funcionan
muy bien en cualquier dispositivo que ejecute
Android, iOS, macOS o Windows desde una
única base de código.
¿Cómo funciona .NET MAUI??
Android iOS macOS Windows
.NET for Android .NET for iOS / Mac Catalyst WinUI
.NET Multi-platform App UI
.NET Runtime
.NET Base Class Library (BCL)
App Code
iOS macOS
¿Cómo funciona .NET MAUI?
.NET Multi-platform App UI
App Code
iOS macOS
Rica biblioteca de controles
· Más de 40 controles
· Navegación
· Menú desplegable
· Pestañas inferiores
· Pestañas superiores
· Jerárquica
· Diseños adaptables
· De derecha a izquierda
· Accesibilidad semántica
Proveedores de Componentes
Construyendo UI en .NET MAUI
Optimizado para XAML, C # y MVVM
Abundantes Opciones de Estilo
· Temas para luz y oscuridad
· Estilos estáticos y dinámicos
· XAML y CSS
· Administrador de estado visual
· Fuentes e íconos de fuentes
personalizados
· Imágenes de muchos formatos, incluido
SVG
#if ANDROID
Handlers.EntryHandler
.EntryMapper[nameof(IEntry.BackgroundColor)] = (h, v) =>
{
(h.NativeView as global::Android.Views.Entry).UnderlineVisible = false
};
#endif
Personalice fácilmente los controles
#ifdef if platform specific
Access the handler from anywhere
Dictionary of all props
Interfaz de usuario dibujada con Maui.Graphics (experimental)
· Gráficos nativos o SkiaSharp
· Material de Diseño y fluidez
Mejoras en el sistema de proyectos
Optimizado para flujos de trabajo multiplataforma
Single Project
Reducir varios proyectos a un solo proyecto alivia varios
puntos de fricción al desarrollar aplicaciones que se
dirigen a múltiples plataformas.
• Imágenes
• Fuentes
• Código de Plataforma
• Splash Screen (Pantalla de Bienvenida)
Productividad
Productivity
Single Project
Reducir varios proyectos a un solo proyecto alivia varios
puntos de fricción al desarrollar aplicaciones que se
dirigen a múltiples plataformas.
• Imágenes
• Fuentes
• Código de Plataforma
• Splash Screen (Pantalla de Bienvenida)
Productivity
Reducir varios proyectos a un solo proyecto alivia varios
puntos de fricción al desarrollar aplicaciones que se
dirigen a múltiples plataformas.
• Imágenes
• Fuentes
• Código de Plataforma
• Splash Screen (Pantalla de Bienvenida)
Single Project
Productivity
Single Project
Reducir varios proyectos a un solo proyecto alivia varios
puntos de fricción al desarrollar aplicaciones que se
dirigen a múltiples plataformas.
• Imágenes
• Fuentes
• Código de Plataforma
• Splash Screen (Pantalla de Bienvenida)
Desarrollo más rápido
Bucle interno optimizado
Código en vivo
Ya sea XAML o C #, puede codificar mientras
depura su aplicación y ver los cambios al
instante. No más detener-editar-reconstruir
para ajustes simples.
Cuando haga algo más complejo, Visual Studio
le pedirá que lo reconstruya.
• C#
• CSS
• Razor
• XAML
Productividad
Windows and iOS
Conecte cualquier dispositivo iOS directamente a
Windows y comience a codificar en Visual Studio
2022. ¡Eso es todo!
Los cambios se envían desde Visual Studio
directamente a la aplicación que se ejecuta en el
dispositivo, no se requiere un host de compilación
de Mac.
Cuando esté listo para publicar y distribuir, conecte
una Mac o use un servicio en la nube para terminar
el trabajo.
Productividad
Simulador de iOS Remoto
Para obtener más funciones de Apple, conecte su
Visual Studio 2022 de Windows a una Mac en su
red local. Con esto obtendremos:
• Xcode Nativo se compile sobre SSH
• Simulador Remoto
• Soporte de Pantalla Táctil
Productividad
Y más allá…
Más formas de usar .NET MAUI
Essentials
Utilice Maui.Essentials para acceder a los servicios del dispositivo en todos los
destinos .NET MAUI
• Acelerómetro
• Acciones de la aplicación
• Información de la aplicación
• Barómetro
• Bateria
• Portapapeles
• Brújula
• Conectividad
Bonus
Blazor Hybrid
Combine su aplicación Blazor y .NET MAUI para crear
una experiencia híbrida perfecta en computadoras
de escritorio y dispositivos móviles.
Aplicación web de hosts BlazorWebView
Acceda a cualquier api .NET MAUI desde Razor
Combine la interfaz de usuario web y la interfaz de
usuario nativa
Huella de memoria reducida
Bonus
Microsoft.Maui.Graphics
Lo que .NET MAUI es para los kits de herramientas de interfaz
de usuario de la plataforma, Maui.Graphics es para la
representación de gráficos de plataforma.
• Lienzo con tipos de dibujo primitivos.
• Fuentes
• Texto atribuido
• Mapas de bits
• Archivos PDF
• Tipos de colores unificados
• Soporte de plataforma amplia
• Compatible con SkiaSharp
Bonus
🐱‍🏍
.NET 6 GA
Nov 9, 2021
Ignite Conference
Oct 13, 2021
Bug Fixes
.NET 6 RC2
Oct 12, 2021
Android S & iOS 15 may
be stable sometime in this
timeframe
Bug Fixes
.NET 6 RC1
Sept 14, 2021
VS 2022 Templates
C# Hot Reload
XAML Hot Reload
Hot Restart
iOS Remote Simulator
try-convert support
FEATURE COMPLETE
.NET 6 Preview 7
Aug 10, 2021
dotnet install
.NET 6 Preview 6
Jul 14, 2021
Cronología de.NET MAUI https://github.com/dotnet/maui/wiki/roadmap
Nosotros
estamos aqui
Preguntas frecuentes
Preguntas, preocupaciones y la búsqueda del queso.
¿Debo usar Xamarin.Forms
ahora o esperar a .NET MAUI?
Xamarin.Forms. Su proyecto se actualizará a .NET MAUI.
¿Se migrará mi solución a
"Single Project"?
No, sus proyectos existentes seguirán funcionando sin Single Project.
Migraremos los proyectos existentes al sistema de proyectos común .NET 6.
Se proporcionará documentación si desea adoptar Single Project manualmente.
¿Necesito reescribir los
custom renderers?
No, el equipo de Microsoft se asegurará de que los
custom renderers sigan funcionando.
Querrás migrarlos a tu conveniencia.
¿Seguirán funcionando las
bibliotecas de IU de terceros?
¡Sí! Como mínimo, deberán volver a compilar agregando un destino para .NET 6.
¿Se ejecutará .NET MAUI en Linux?
Linux no es una plataforma compatible con esta versión de .NET
MAUI. Hay un backend no oficial implementado con GTK.
¿Qué "sabor" de XAML
utilizará .NET MAUI?
El mismo XAML que usa en Xamarin.Forms hoy.
Revisaremos algunos cambios de nombres más adelante en la vista previa.
¿Dónde puedo seguir el progreso?
github.com/dotnet/maui
Actualizado regularmente desde xamarin/xamarin.forms
¡ Gracias!
@LucioMSP
https://vicenteguzman + dm/ dm = .com || .mx
Microsoft
Universidad de Cuenca
¡Muchas gracias por participar en este espacio de la Comunidad Microsoft
de la Universidad de Cuenca!
¡¡Hasta pronto!!

Bienvenido .Net MAUI - la evolución de Xamarin.Forms

  • 2.
    Bienvenido .NET MAUI laevolución de Xamarin.Forms Vicente G. Guzmán Lucio Application Development Specialist luciomsp@geeks.ms @LucioMSP
  • 3.
    Agenda - Descripción generalde .NET MAUI - Mejoras en el sistema de proyectos - Desarrollo más rápido con VS 2022 - Análisis profundo de .NET MAUI
  • 4.
    Viaje en eltiempo…
  • 5.
  • 6.
    .NET MAUI esla forma más productiva de desarrollar aplicaciones nativas que funcionan muy bien en cualquier dispositivo que ejecute Android, iOS, macOS o Windows desde una única base de código.
  • 7.
    ¿Cómo funciona .NETMAUI?? Android iOS macOS Windows .NET for Android .NET for iOS / Mac Catalyst WinUI .NET Multi-platform App UI .NET Runtime .NET Base Class Library (BCL) App Code iOS macOS
  • 8.
    ¿Cómo funciona .NETMAUI? .NET Multi-platform App UI App Code iOS macOS
  • 9.
    Rica biblioteca decontroles · Más de 40 controles · Navegación · Menú desplegable · Pestañas inferiores · Pestañas superiores · Jerárquica · Diseños adaptables · De derecha a izquierda · Accesibilidad semántica
  • 10.
  • 11.
    Construyendo UI en.NET MAUI Optimizado para XAML, C # y MVVM
  • 12.
    Abundantes Opciones deEstilo · Temas para luz y oscuridad · Estilos estáticos y dinámicos · XAML y CSS · Administrador de estado visual · Fuentes e íconos de fuentes personalizados · Imágenes de muchos formatos, incluido SVG
  • 13.
    #if ANDROID Handlers.EntryHandler .EntryMapper[nameof(IEntry.BackgroundColor)] =(h, v) => { (h.NativeView as global::Android.Views.Entry).UnderlineVisible = false }; #endif Personalice fácilmente los controles #ifdef if platform specific Access the handler from anywhere Dictionary of all props
  • 14.
    Interfaz de usuariodibujada con Maui.Graphics (experimental) · Gráficos nativos o SkiaSharp · Material de Diseño y fluidez
  • 15.
    Mejoras en elsistema de proyectos Optimizado para flujos de trabajo multiplataforma
  • 16.
    Single Project Reducir variosproyectos a un solo proyecto alivia varios puntos de fricción al desarrollar aplicaciones que se dirigen a múltiples plataformas. • Imágenes • Fuentes • Código de Plataforma • Splash Screen (Pantalla de Bienvenida) Productividad
  • 17.
    Productivity Single Project Reducir variosproyectos a un solo proyecto alivia varios puntos de fricción al desarrollar aplicaciones que se dirigen a múltiples plataformas. • Imágenes • Fuentes • Código de Plataforma • Splash Screen (Pantalla de Bienvenida)
  • 18.
    Productivity Reducir varios proyectosa un solo proyecto alivia varios puntos de fricción al desarrollar aplicaciones que se dirigen a múltiples plataformas. • Imágenes • Fuentes • Código de Plataforma • Splash Screen (Pantalla de Bienvenida) Single Project
  • 19.
    Productivity Single Project Reducir variosproyectos a un solo proyecto alivia varios puntos de fricción al desarrollar aplicaciones que se dirigen a múltiples plataformas. • Imágenes • Fuentes • Código de Plataforma • Splash Screen (Pantalla de Bienvenida)
  • 20.
  • 21.
    Código en vivo Yasea XAML o C #, puede codificar mientras depura su aplicación y ver los cambios al instante. No más detener-editar-reconstruir para ajustes simples. Cuando haga algo más complejo, Visual Studio le pedirá que lo reconstruya. • C# • CSS • Razor • XAML Productividad
  • 22.
    Windows and iOS Conectecualquier dispositivo iOS directamente a Windows y comience a codificar en Visual Studio 2022. ¡Eso es todo! Los cambios se envían desde Visual Studio directamente a la aplicación que se ejecuta en el dispositivo, no se requiere un host de compilación de Mac. Cuando esté listo para publicar y distribuir, conecte una Mac o use un servicio en la nube para terminar el trabajo. Productividad
  • 23.
    Simulador de iOSRemoto Para obtener más funciones de Apple, conecte su Visual Studio 2022 de Windows a una Mac en su red local. Con esto obtendremos: • Xcode Nativo se compile sobre SSH • Simulador Remoto • Soporte de Pantalla Táctil Productividad
  • 24.
    Y más allá… Másformas de usar .NET MAUI
  • 25.
    Essentials Utilice Maui.Essentials paraacceder a los servicios del dispositivo en todos los destinos .NET MAUI • Acelerómetro • Acciones de la aplicación • Información de la aplicación • Barómetro • Bateria • Portapapeles • Brújula • Conectividad Bonus
  • 26.
    Blazor Hybrid Combine suaplicación Blazor y .NET MAUI para crear una experiencia híbrida perfecta en computadoras de escritorio y dispositivos móviles. Aplicación web de hosts BlazorWebView Acceda a cualquier api .NET MAUI desde Razor Combine la interfaz de usuario web y la interfaz de usuario nativa Huella de memoria reducida Bonus
  • 27.
    Microsoft.Maui.Graphics Lo que .NETMAUI es para los kits de herramientas de interfaz de usuario de la plataforma, Maui.Graphics es para la representación de gráficos de plataforma. • Lienzo con tipos de dibujo primitivos. • Fuentes • Texto atribuido • Mapas de bits • Archivos PDF • Tipos de colores unificados • Soporte de plataforma amplia • Compatible con SkiaSharp Bonus
  • 28.
    🐱‍🏍 .NET 6 GA Nov9, 2021 Ignite Conference Oct 13, 2021 Bug Fixes .NET 6 RC2 Oct 12, 2021 Android S & iOS 15 may be stable sometime in this timeframe Bug Fixes .NET 6 RC1 Sept 14, 2021 VS 2022 Templates C# Hot Reload XAML Hot Reload Hot Restart iOS Remote Simulator try-convert support FEATURE COMPLETE .NET 6 Preview 7 Aug 10, 2021 dotnet install .NET 6 Preview 6 Jul 14, 2021 Cronología de.NET MAUI https://github.com/dotnet/maui/wiki/roadmap Nosotros estamos aqui
  • 29.
  • 30.
    ¿Debo usar Xamarin.Forms ahorao esperar a .NET MAUI? Xamarin.Forms. Su proyecto se actualizará a .NET MAUI.
  • 31.
    ¿Se migrará misolución a "Single Project"? No, sus proyectos existentes seguirán funcionando sin Single Project. Migraremos los proyectos existentes al sistema de proyectos común .NET 6. Se proporcionará documentación si desea adoptar Single Project manualmente.
  • 32.
    ¿Necesito reescribir los customrenderers? No, el equipo de Microsoft se asegurará de que los custom renderers sigan funcionando. Querrás migrarlos a tu conveniencia.
  • 33.
    ¿Seguirán funcionando las bibliotecasde IU de terceros? ¡Sí! Como mínimo, deberán volver a compilar agregando un destino para .NET 6.
  • 34.
    ¿Se ejecutará .NETMAUI en Linux? Linux no es una plataforma compatible con esta versión de .NET MAUI. Hay un backend no oficial implementado con GTK.
  • 35.
    ¿Qué "sabor" deXAML utilizará .NET MAUI? El mismo XAML que usa en Xamarin.Forms hoy. Revisaremos algunos cambios de nombres más adelante en la vista previa.
  • 36.
    ¿Dónde puedo seguirel progreso? github.com/dotnet/maui Actualizado regularmente desde xamarin/xamarin.forms
  • 37.
  • 38.
    Microsoft Universidad de Cuenca ¡Muchasgracias por participar en este espacio de la Comunidad Microsoft de la Universidad de Cuenca! ¡¡Hasta pronto!!