SlideShare une entreprise Scribd logo
1  sur  65
La vida después de
Xamarin: .NET MAUI y el
desarrollo de apps móviles
Luis Beltrán
Microsoft MVP
@darkicebeam
Luis Beltrán
• Investigador en Tomás Bata
University in Zlín
• Docente en Tecnológico
Nacional de México en Celaya
• Microsoft MVP en IA y
Tecnologías de Desarrollador
@darkicebeam
luis@luisbeltran.mx
Xamarin
Una plataforma de aplicaciones open source de Microsoft para construir apps iOS,
Android, macOS, Windows, watchOS, & tvOS modernas y de
alto rendimiento con .NET.
Xamarin.Forms
Xamarin.Forms
Enfoque Tradicional
iOS C# UI Windows C# UI
Android C# UI
Lógica de C# (Shared) Lógica de C# (Shared)
Xamarin.Forms
Base de código compartido • Acceso 100% a APIs nativos • Alto
desempeño
.NET Unificado: .NET 6
• Un SDK, un BCL, herramientas unificadas
• Interfaz de usuario móvil, desktop y cross-platform nativa
• Interfaz de usuario web cross-platform
• Inversión en nube nativa
• Mejora en el rendimiento y productividad
.NET
.NET tiene las mejores
soluciones para todas las
cargas de trabajo en una única
plataforma unificada de
Principales características de .NET 6
• Simplifica y escribe menos
código con C # 10
• .NET Multi-Platform App UI (.NET
MAUI) para aplicaciones nativas
móviles y de escritorio
• Aplicaciones web de escritorio
Blazor con capacidades de
dispositivo nativas
• Minimal web APIs para
aplicaciones nativas de la nube
• Más dispositivos soportados,
incluido Apple M1
• Windows Forms y WPF en ARM64
e implementación de EXE de un
solo archivo
• Mejoras en la productividad del
desarrollador, como Hot Reload
para todos los tipos de proyectos
• Mejoras continuas de rendimiento
en tiempo de ejecución y tiempo
de compilación
.NET 6 Previews
• .NET MAUI es compatible con Visual Studio
• Aplicaciones de escritorio híbridas con ASP.NET
Blazor
• Minimal web APIs y microservicios más pequeños y
rápidos
• Más dispositivos, implementación más flexible
• Mejoras de rendimiento y productividad dot.net/get-dotnet6
.NET Multi-platform App UI (.NET MAUI)
• .NET MAUI es un framework multiplataforma para crear
aplicaciones nativas de escritorio y móviles con C # y XAML.
• Con .NET MAUI, puedes desarrollar aplicaciones nativas que
pueden ejecutarse en Android, iOS, iPadOS, macOS y
Windows desde una única base de código compartida.
• Moderna y de alta productividad.
Los SDKs de Xamarin SDKs ahora son
.NET for Android
iOS
macOS
Mac Catalyst
tvOS
.NET Multi-platform App UI (MAUI)
.NET MAUI
• Interfaz de usuario nativa, multiplataforma
• Sistema de proyecto único
• Una sola base de código compartido
• Implementa en varios dispositivos: móviles
y de escritorio
• Disponibilidad general en .NET 6
.NET 6
.NET Multi-platform App UI
WinUI
Mac
Catalyst
Android
iOS
iOS
macOS
github.com/dotnet/maui
https://docs.microsoft.com/en-us/dotnet/maui/
¿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
¿Qué ofrece la plataforma?
• Más de 40 Controles
• Navegación
• Flyout Menu
• Bottom Tabs
• Top Tabs
• Jerárquica
• Adaptive layouts
• Right-to-Left
• Accesibilidad semántica
CarouselView RefreshView
CollectionView
ActivityIndicator
Entry
OpenGLView
Stepper
ImageCell
IndicatorView
Ellipse
BoxView
Image
Picker
TableView
SwitchCell
Checkbox
Polygon
Button
Label
ProgressBar
TimePicker
TextCell
RadioButton
Rectangle
DatePicker
ListView
SearchBar
WebView
ViewCell
ImageButton
Line
Editor
Map
Slider
EntryCell
Polyline
Path
SwipeView
Controles
Componentes de primer nivel
Diseñando la UI en .NET MAUI
XAML, C#, y MVVM
Personaliza controles de .NET con handlers
Opciones de estilizado
• Tema oscuro y claro
• Estilos estáticos y dinámicos
• XAML y CSS
• Visual State Manager
• Fuentes personalizadas y de
íconos
• Imágenes de distintos
formatos (SGV incluido)
Personalización de controles
#if ANDROID
Handlers.EntryHandler
.EntryMapper[nameof(IEntry.BackgroundColor)] = (h, v) =>
{
(h.NativeView as global::Android.Views.Entry).UnderlineVisible = false
};
#endif
#ifdef if platform specific
Access the handler from anywhere
Dictionary of all props
Dibujando UI con Maui.Graphics (Experimental)
• Gráficos nativos o SkiaSharp
• Fluent y Material design
Single Project
Simplifica el desarrollo de apps que se implementan
en distintas plataformas:
• Un solo proyecto
• Implementa en múltiples dispositivos y
plataformas
• Una sola ubicación para recursos (fuentes,
imágenes, íconos de aplicación, splash screens,
assets)
• Organización de código específico de plataforma
Productivity
Single Project
Productivity
Simplifica el desarrollo de apps que se implementan
en distintas plataformas:
• Un solo proyecto
• Implementa en múltiples dispositivos y
plataformas
• Una sola ubicación para recursos (fuentes,
imágenes, íconos de aplicación, splash screens,
assets)
• Organización de código específico de plataforma
Fundamentos
• Clase App  Punto de entrada de la app
• Clase Startup
• Registro de fuentes
• Registro de handlers
• Registro de renderers
Hot Reload / Hot
Restart soportado
Productivity
• Conecta cualquier dispositivo iOS
directamente a Windows y comienza a
escribir código en Visual Studio 2022.
• 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és listo para publicar y
distribuir, conecta una Mac o usa un
servicio en la nube para terminar el
trabajo.
Productivity
Remote iOS Simulator
Para obtener más funciones de Apple,
conecta Visual Studio 2022 en Windows
a una Mac en la red local. Con esto
obtienes:
• Xcode nativo se compila sobre SSH
• Simulador remoto
• Soporte de pantalla táctil
Productivity
Essentials
Utiliza Maui.Essentials para acceder a los servicios del dispositivo
en todos los destinos .NET MAUI.
• Próxima versión de Xamarin.Essentials
• Acelerómetro
• App Actions
• Información de la aplicación
• Barómetro
• Batería
• Portapapeles
• Brújula
• Conectividad
• Y más
Bonus
Blazor Hybrid
Combina tu aplicación Blazor y .NET MAUI
para crear una experiencia híbrida perfecta en
computadoras de escritorio y dispositivos
móviles.
• BlazorWebView hospeda la aplicación web.
• Accede a cualquier api .NET MAUI desde
Razor
• Combina web UI y native UI
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.
• Canvas con tipos de dibujo primitivos
• Fuentes
• Texto con atributos
• 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
.NET MAUI timeline (*) https://github.com/dotnet/maui/wiki/roadmap
¡Actualización!
https://devblogs.microsoft.com/dotnet/update-on-dotnet-maui/
Demo
Migrando Back2LearnApp (Xamarin.Forms app)
https://github.com/icebeam7/Back2LearnApp
a .NET MAUI project
https://github.com/icebeam7/Back2LearnMauiApp
¿Qué debo usar ahora?
¿Xamarin.Forms o
esperar a .NET MAUI?
Xamarin.Forms
Tu proyecto lo podrás actualizar a .NET MAUI posteriormente
Pre-requisitos
Para una mejor probabilidad de éxito al migrar a .NET 6 se
recomienda:
• Actualiza cualquier proyecto PCL a .NET Standard
• Actualiza los proyectos Xamarin.Forms a la versión 5.0
• Actualiza packages.config a PackageReference
Herramientas recomendadas:
• Visual Studio 2022 para Windows o Mac (link)
• .NET 6 (link)
• .NET Upgrade Assistant (link)
Pasos de actualización
Ejecuta el .NET Upgrade Assistant para:
1. Respaldar tu proyecto existente
2. Convertir *.csproj al SDK Style
3. Migrar namespaces de Xamarin.* to Microsoft.Maui.*
4. Revisar y reemplazar paquetes NuGet con versiones compatibles de .NET 6
Abre el proyecto en Visual Studio 2022 para:
1. Gestionar las dependencias de NuGet
2. Compilar y corregir errores
Tiempo estimado: depende de la complejidad del proyecto (pero no
debería ser demasiado…)
Compatibilidad de NuGet
¿Cómo saber si se necesita actualizar o reemplazar una
dependencia de NuGet?
Caso 1
Los NuGets que son .NET Standard y no hacen referencia a
ningún tipo de Xamarin.Forms probablemente funcionarán como
están.
Caso 2
Los NuGets que hacen referencia a los tipos de Xamarin.Forms
deben actualizarse a los tipos de Microsoft.Maui.Controls y volver
a publicarse con TFM de .NET 6 (Target Framework Moniker)
¿El proyecto se debe
migrar a “Single Project”?
No, tus proyectos existentes seguirán funcionando sin Single Project.
Migraremos los proyectos existentes al sistema de proyecto común de .NET 6.
Se proporcionará documentación si desea adoptar Single Project manualmente.
¿Necesito reescribir
mis custom renderers?
No. Nos aseguramos de que los renderizadores
sigan funcionando.
Xamarin.Forms a Microsoft.Maui
.NET MAUI puede ejecutar Effects y Custom Renderers
Actualiza los namespaces en tu implementación de plataforma a Microsoft.Maui
1. Registra tu Effect en Startup.cs:
2. Registra tu Renderer en Startup.cs:
No se requiere cambio alguno en XAML
appBuilder.ConfigureEffects(builder => {
builder.Add<FocusRoutingEffect, FocusPlatformEffect>();
});
appBuilder.ConfigureMauiHandlers(builder => {
#if __ANDROID__
handlers.AddCompatibilityRenderer(typeof(CustomEntry),
typeof(Droid.Renderers.CustomEntryRenderer));
#endif
});
Xamarin.Forms a Microsoft.Maui
(Opcional)
• Migra los Effects y Renderers a la nueva arquitectura de
Handlers
• Migra soluciones de múltiples proyectos a Single project
Ejemplos y recursos: https://github.com/jsuarezruiz/xamarin-forms-to-net-maui
¿Seguirán funcionando
las bibliotecas de UI de
terceros?
¡Sí! Como mínimo, deberán volver a compilar
agregando un target para .NET 6.
¿.NET MAUI podrá
ejecutarse 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
utilzará .NET MAUI?
El mismo XAML que utilizas en Xamarin.Forms hoy en día.
Revisaremos algunos cambios de nombres más adelante en los previews.
Xamarin.Forms a Microsoft.Maui
.NET MAUI usa el mismo XAML y controles que Xamarin.Forms
¿Dónde puedo
seguir el progreso?
github.com/dotnet/maui
Actualizado constantemente con xamarin/xamarin.forms
Q & A
Invitación: Call for Speakers .NET Conf
Latam 2021
https://sessionize.com/dotnetconflatam2021/
Invitación: Call for Speakers Global AI
Back Together Latinoamérica 2021
https://sessionize.com/global-ai-back-together-latinoamerica-2021/
¡Gracias por tu atención!
Luis Beltrán
Tomás Bata University in Zlín
Tecnológico Nacional de México en Celaya
luis@luisbeltran.mx luisbeltran.mx @darkicebeam
/icebeam /darkicebeam /luisantoniobeltran
/icebeam7 about.me/luis-beltran

Contenu connexe

Tendances

Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...Luis Beltran
 
Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...
Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...
Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...Luis Beltran
 
GAIBT Latam - Workshop Custom Vision ONNX.pptx
GAIBT Latam - Workshop Custom Vision ONNX.pptxGAIBT Latam - Workshop Custom Vision ONNX.pptx
GAIBT Latam - Workshop Custom Vision ONNX.pptxLuis Beltran
 
GAIBT LaPaz - Serverless Machine Learning.pptx
GAIBT LaPaz - Serverless Machine Learning.pptxGAIBT LaPaz - Serverless Machine Learning.pptx
GAIBT LaPaz - Serverless Machine Learning.pptxLuis Beltran
 
Construye un bot para Microsoft Teams sin saber programar
Construye un bot para Microsoft Teams sin saber programarConstruye un bot para Microsoft Teams sin saber programar
Construye un bot para Microsoft Teams sin saber programarLuis Beltran
 
Hablemos de .NET 6 y .NET MAUI
Hablemos de .NET 6 y .NET MAUIHablemos de .NET 6 y .NET MAUI
Hablemos de .NET 6 y .NET MAUILuis Beltran
 
Inteligencia artificial in house con servicios cognitivos y docker
Inteligencia artificial in house con servicios cognitivos y dockerInteligencia artificial in house con servicios cognitivos y docker
Inteligencia artificial in house con servicios cognitivos y dockerLuis Beltran
 
Global AI on Tour - Desarrollando un bot de WhatsApp serverless.pptx
Global AI on Tour - Desarrollando un bot de WhatsApp serverless.pptxGlobal AI on Tour - Desarrollando un bot de WhatsApp serverless.pptx
Global AI on Tour - Desarrollando un bot de WhatsApp serverless.pptxLuis Beltran
 
CONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptx
CONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptxCONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptx
CONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptxLuis Beltran
 
Global AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptx
Global AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptxGlobal AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptx
Global AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptxLuis Beltran
 
GWAB: Azure Mobile Services
GWAB: Azure Mobile ServicesGWAB: Azure Mobile Services
GWAB: Azure Mobile ServicesSorey García
 
Colombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxColombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxLuis Beltran
 
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptxSesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptxLuis Beltran
 
Beneficios de Azure.pptx
Beneficios de Azure.pptxBeneficios de Azure.pptx
Beneficios de Azure.pptxLuis Beltran
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...Sorey García
 
Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...
Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...
Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...Luis Beltran
 
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptxLatino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptxLuis Beltran
 
Boya.ca - Introducción a Windows Phone
Boya.ca - Introducción a Windows PhoneBoya.ca - Introducción a Windows Phone
Boya.ca - Introducción a Windows PhoneSorey García
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLSorey García
 

Tendances (20)

Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
 
Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...
Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...
Jornada 10 años ASP NET en Español - Implementación de Notificaciones Push...
 
GAIBT Latam - Workshop Custom Vision ONNX.pptx
GAIBT Latam - Workshop Custom Vision ONNX.pptxGAIBT Latam - Workshop Custom Vision ONNX.pptx
GAIBT Latam - Workshop Custom Vision ONNX.pptx
 
GAIBT LaPaz - Serverless Machine Learning.pptx
GAIBT LaPaz - Serverless Machine Learning.pptxGAIBT LaPaz - Serverless Machine Learning.pptx
GAIBT LaPaz - Serverless Machine Learning.pptx
 
Construye un bot para Microsoft Teams sin saber programar
Construye un bot para Microsoft Teams sin saber programarConstruye un bot para Microsoft Teams sin saber programar
Construye un bot para Microsoft Teams sin saber programar
 
Hablemos de .NET 6 y .NET MAUI
Hablemos de .NET 6 y .NET MAUIHablemos de .NET 6 y .NET MAUI
Hablemos de .NET 6 y .NET MAUI
 
Inteligencia artificial in house con servicios cognitivos y docker
Inteligencia artificial in house con servicios cognitivos y dockerInteligencia artificial in house con servicios cognitivos y docker
Inteligencia artificial in house con servicios cognitivos y docker
 
Global AI on Tour - Desarrollando un bot de WhatsApp serverless.pptx
Global AI on Tour - Desarrollando un bot de WhatsApp serverless.pptxGlobal AI on Tour - Desarrollando un bot de WhatsApp serverless.pptx
Global AI on Tour - Desarrollando un bot de WhatsApp serverless.pptx
 
CONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptx
CONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptxCONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptx
CONGRESO MICROSOFT 2021 Desarrollo multiproposito con NET.pptx
 
MLOps.pptx
MLOps.pptxMLOps.pptx
MLOps.pptx
 
Global AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptx
Global AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptxGlobal AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptx
Global AI Night 2021 -Desarrollando un chatbot de WhatsApp serverless.pptx
 
GWAB: Azure Mobile Services
GWAB: Azure Mobile ServicesGWAB: Azure Mobile Services
GWAB: Azure Mobile Services
 
Colombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxColombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptx
 
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptxSesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
Sesion 5 - Eficiencia del Rendimiento - Well Architected Backstage Tour.pptx
 
Beneficios de Azure.pptx
Beneficios de Azure.pptxBeneficios de Azure.pptx
Beneficios de Azure.pptx
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
 
Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...
Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...
Gira Online Latinoamerica Chatbots y Reconocimiento de Imágenes en WhatsApp ...
 
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptxLatino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
Latino NET - Integrando WhatsApp en nuestras apps .NET con Twilio.pptx
 
Boya.ca - Introducción a Windows Phone
Boya.ca - Introducción a Windows PhoneBoya.ca - Introducción a Windows Phone
Boya.ca - Introducción a Windows Phone
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAML
 

Similaire à Azure Tech Frogs La vida despues de Xamarin NET MAUI y el desarrollo de apps.pptx

Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsJavier Suárez Ruiz
 
NetRaf 2017 - La plataforma .NET en el 2017
NetRaf 2017 - La plataforma .NET en el 2017NetRaf 2017 - La plataforma .NET en el 2017
NetRaf 2017 - La plataforma .NET en el 2017Diego Bersano
 
Consideraciones al escoger apps híbridas vs nativas
Consideraciones al escoger apps híbridas vs nativasConsideraciones al escoger apps híbridas vs nativas
Consideraciones al escoger apps híbridas vs nativasSoftware Guru
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!Javier Suárez Ruiz
 
Desarrollando apps multiplataforma con Xamarin y MVVMCross
Desarrollando apps multiplataforma con Xamarin y MVVMCrossDesarrollando apps multiplataforma con Xamarin y MVVMCross
Desarrollando apps multiplataforma con Xamarin y MVVMCrossIvan Rodrigo Toledo Ivanovic
 
Introducción a las Aplicaciones Universales
Introducción a las Aplicaciones UniversalesIntroducción a las Aplicaciones Universales
Introducción a las Aplicaciones UniversalesJavier Suárez Ruiz
 
WinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSWinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSJavier Suárez Ruiz
 
Arquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appArquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appBorja García Cueto
 
Dev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a XamarinDev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a XamarinSergio Gasca García
 
Net Maui Blazor Jornada ASP Net en Español.pptx
Net Maui Blazor Jornada ASP Net en Español.pptxNet Maui Blazor Jornada ASP Net en Español.pptx
Net Maui Blazor Jornada ASP Net en Español.pptxLuis775803
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidadRaelyx Cordero
 
Reconnect(); Sevilla - Introducción a Xamarin 4
Reconnect(); Sevilla - Introducción a Xamarin 4Reconnect(); Sevilla - Introducción a Xamarin 4
Reconnect(); Sevilla - Introducción a Xamarin 4Javier Suárez Ruiz
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles RAUL Velez
 
Xamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a XamarinXamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a XamarinJavier Suárez Ruiz
 
Microsoft Visual Studio Universidad OYM Seccion 0435
Microsoft Visual Studio Universidad OYM Seccion 0435Microsoft Visual Studio Universidad OYM Seccion 0435
Microsoft Visual Studio Universidad OYM Seccion 0435Scarlett Rodriiguez
 
PUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinPUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinJavier Suárez Ruiz
 
re-Connect Madrid: Novedades Xamarin
re-Connect Madrid: Novedades Xamarinre-Connect Madrid: Novedades Xamarin
re-Connect Madrid: Novedades XamarinJavier Suárez Ruiz
 

Similaire à Azure Tech Frogs La vida despues de Xamarin NET MAUI y el desarrollo de apps.pptx (20)

Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
 
NetRaf 2017 - La plataforma .NET en el 2017
NetRaf 2017 - La plataforma .NET en el 2017NetRaf 2017 - La plataforma .NET en el 2017
NetRaf 2017 - La plataforma .NET en el 2017
 
Consideraciones al escoger apps híbridas vs nativas
Consideraciones al escoger apps híbridas vs nativasConsideraciones al escoger apps híbridas vs nativas
Consideraciones al escoger apps híbridas vs nativas
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!
 
Desarrollando apps multiplataforma con Xamarin y MVVMCross
Desarrollando apps multiplataforma con Xamarin y MVVMCrossDesarrollando apps multiplataforma con Xamarin y MVVMCross
Desarrollando apps multiplataforma con Xamarin y MVVMCross
 
Introducción a las Aplicaciones Universales
Introducción a las Aplicaciones UniversalesIntroducción a las Aplicaciones Universales
Introducción a las Aplicaciones Universales
 
Primer vistazo a .NET MAUI
Primer vistazo a .NET MAUIPrimer vistazo a .NET MAUI
Primer vistazo a .NET MAUI
 
WinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSWinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOS
 
Arquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appArquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera app
 
Dev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a XamarinDev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a Xamarin
 
introducción a xamarin
  introducción a xamarin  introducción a xamarin
introducción a xamarin
 
Net Maui Blazor Jornada ASP Net en Español.pptx
Net Maui Blazor Jornada ASP Net en Español.pptxNet Maui Blazor Jornada ASP Net en Español.pptx
Net Maui Blazor Jornada ASP Net en Español.pptx
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidad
 
Reconnect(); Sevilla - Introducción a Xamarin 4
Reconnect(); Sevilla - Introducción a Xamarin 4Reconnect(); Sevilla - Introducción a Xamarin 4
Reconnect(); Sevilla - Introducción a Xamarin 4
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles
 
Xamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a XamarinXamarin Dev Days - Introducción a Xamarin
Xamarin Dev Days - Introducción a Xamarin
 
Microsoft Visual Studio Universidad OYM Seccion 0435
Microsoft Visual Studio Universidad OYM Seccion 0435Microsoft Visual Studio Universidad OYM Seccion 0435
Microsoft Visual Studio Universidad OYM Seccion 0435
 
Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 
PUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinPUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a Xamarin
 
re-Connect Madrid: Novedades Xamarin
re-Connect Madrid: Novedades Xamarinre-Connect Madrid: Novedades Xamarin
re-Connect Madrid: Novedades Xamarin
 

Plus de Luis Beltran

AI for Accessibility.pptx
AI for Accessibility.pptxAI for Accessibility.pptx
AI for Accessibility.pptxLuis Beltran
 
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptxNET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptxLuis Beltran
 
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptxLuis Beltran
 
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...Luis Beltran
 
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdfCEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdfLuis Beltran
 
Computo en la Nube con Azure - AI Gaming Panama.pptx
Computo en la Nube con Azure - AI Gaming Panama.pptxComputo en la Nube con Azure - AI Gaming Panama.pptx
Computo en la Nube con Azure - AI Gaming Panama.pptxLuis Beltran
 
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptxLuis Beltran
 
ACW - Azure Speaker Recognition Biometria de Voz.pptx
ACW - Azure Speaker Recognition Biometria de Voz.pptxACW - Azure Speaker Recognition Biometria de Voz.pptx
ACW - Azure Speaker Recognition Biometria de Voz.pptxLuis Beltran
 
UNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptxUNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptxLuis Beltran
 
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...Luis Beltran
 
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptxNOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptxLuis Beltran
 
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...Luis Beltran
 
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...Luis Beltran
 
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...Luis Beltran
 
Real NET Docs Show - Serverless Machine Learning v3.pptx
Real NET Docs Show - Serverless Machine Learning v3.pptxReal NET Docs Show - Serverless Machine Learning v3.pptx
Real NET Docs Show - Serverless Machine Learning v3.pptxLuis Beltran
 
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...Luis Beltran
 
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptx
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptxLatam Space Week - Clasificación de rocas espaciales por medio de IA.pptx
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptxLuis Beltran
 
GAIBT Pune - Future of AI.pptx
GAIBT Pune - Future of AI.pptxGAIBT Pune - Future of AI.pptx
GAIBT Pune - Future of AI.pptxLuis Beltran
 
GAIBT Cleveland - Personalizer.pptx
GAIBT Cleveland - Personalizer.pptxGAIBT Cleveland - Personalizer.pptx
GAIBT Cleveland - Personalizer.pptxLuis Beltran
 
GAIBT NewYork - Serverless Machine Learning.pptx
GAIBT NewYork - Serverless Machine Learning.pptxGAIBT NewYork - Serverless Machine Learning.pptx
GAIBT NewYork - Serverless Machine Learning.pptxLuis Beltran
 

Plus de Luis Beltran (20)

AI for Accessibility.pptx
AI for Accessibility.pptxAI for Accessibility.pptx
AI for Accessibility.pptx
 
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptxNET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
NET Conf Bhubaneswar - Migrating your Xamarin.Forms app to .NET MAUI.pptx
 
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
 
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
BI LATAM Summit 2022 - Creación de soluciones de automatización serverless-...
 
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdfCEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
CEIAAIT - Fundamentos y Aplicaciones de Deep Learning.pdf
 
Computo en la Nube con Azure - AI Gaming Panama.pptx
Computo en la Nube con Azure - AI Gaming Panama.pptxComputo en la Nube con Azure - AI Gaming Panama.pptx
Computo en la Nube con Azure - AI Gaming Panama.pptx
 
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
5StarsConf - Serverless Machine Learning con Azure Functions y ML.NET .pptx
 
ACW - Azure Speaker Recognition Biometria de Voz.pptx
ACW - Azure Speaker Recognition Biometria de Voz.pptxACW - Azure Speaker Recognition Biometria de Voz.pptx
ACW - Azure Speaker Recognition Biometria de Voz.pptx
 
UNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptxUNICABA - Azure Machine Learning.pptx
UNICABA - Azure Machine Learning.pptx
 
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
Azure Talks Bolivia - Aumente la confiabilidad de su negocio con Azure Anomal...
 
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptxNOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
NOVA - Enriquecimiento de IA con Azure Cognitive Search.pptx
 
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
Netcoreconf 2021 Realidad mixta en apps móviles con Azure Spatial Anchors y ...
 
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
Data-Saturday-10-Sofia-2021 Azure Video Indexer- Advanced data extraction fro...
 
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
Azure Community Conference - Image Recognition in WhatsApp chatbot with Azure...
 
Real NET Docs Show - Serverless Machine Learning v3.pptx
Real NET Docs Show - Serverless Machine Learning v3.pptxReal NET Docs Show - Serverless Machine Learning v3.pptx
Real NET Docs Show - Serverless Machine Learning v3.pptx
 
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
XamarinExpertDay - Creating PDF files in mobile apps with PdfSharpCore and Mi...
 
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptx
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptxLatam Space Week - Clasificación de rocas espaciales por medio de IA.pptx
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptx
 
GAIBT Pune - Future of AI.pptx
GAIBT Pune - Future of AI.pptxGAIBT Pune - Future of AI.pptx
GAIBT Pune - Future of AI.pptx
 
GAIBT Cleveland - Personalizer.pptx
GAIBT Cleveland - Personalizer.pptxGAIBT Cleveland - Personalizer.pptx
GAIBT Cleveland - Personalizer.pptx
 
GAIBT NewYork - Serverless Machine Learning.pptx
GAIBT NewYork - Serverless Machine Learning.pptxGAIBT NewYork - Serverless Machine Learning.pptx
GAIBT NewYork - Serverless Machine Learning.pptx
 

Dernier

Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadEduardoSantiagoSegov
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDAVIDROBERTOGALLEGOS
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armadob7fwtwtfxf
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxkimontey
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdfsharitcalderon04
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 

Dernier (20)

Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
La tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedadLa tecnología y su impacto en la sociedad
La tecnología y su impacto en la sociedad
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
David_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptxDavid_Gallegos - tarea de la sesión 11.pptx
David_Gallegos - tarea de la sesión 11.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
Viguetas Pretensadas en concreto armado
Viguetas Pretensadas  en concreto armadoViguetas Pretensadas  en concreto armado
Viguetas Pretensadas en concreto armado
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptxLINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
LINEA DE TIEMPO LITERATURA DIFERENCIADO LITERATURA.pptx
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
Análisis de Artefactos Tecnologicos (3) (1).pdf
Análisis de Artefactos Tecnologicos  (3) (1).pdfAnálisis de Artefactos Tecnologicos  (3) (1).pdf
Análisis de Artefactos Tecnologicos (3) (1).pdf
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 

Azure Tech Frogs La vida despues de Xamarin NET MAUI y el desarrollo de apps.pptx

  • 1. La vida después de Xamarin: .NET MAUI y el desarrollo de apps móviles Luis Beltrán Microsoft MVP @darkicebeam
  • 2. Luis Beltrán • Investigador en Tomás Bata University in Zlín • Docente en Tecnológico Nacional de México en Celaya • Microsoft MVP en IA y Tecnologías de Desarrollador @darkicebeam luis@luisbeltran.mx
  • 3. Xamarin Una plataforma de aplicaciones open source de Microsoft para construir apps iOS, Android, macOS, Windows, watchOS, & tvOS modernas y de alto rendimiento con .NET.
  • 4.
  • 5. Xamarin.Forms Xamarin.Forms Enfoque Tradicional iOS C# UI Windows C# UI Android C# UI Lógica de C# (Shared) Lógica de C# (Shared) Xamarin.Forms Base de código compartido • Acceso 100% a APIs nativos • Alto desempeño
  • 6. .NET Unificado: .NET 6 • Un SDK, un BCL, herramientas unificadas • Interfaz de usuario móvil, desktop y cross-platform nativa • Interfaz de usuario web cross-platform • Inversión en nube nativa • Mejora en el rendimiento y productividad .NET .NET tiene las mejores soluciones para todas las cargas de trabajo en una única plataforma unificada de
  • 7. Principales características de .NET 6 • Simplifica y escribe menos código con C # 10 • .NET Multi-Platform App UI (.NET MAUI) para aplicaciones nativas móviles y de escritorio • Aplicaciones web de escritorio Blazor con capacidades de dispositivo nativas • Minimal web APIs para aplicaciones nativas de la nube • Más dispositivos soportados, incluido Apple M1 • Windows Forms y WPF en ARM64 e implementación de EXE de un solo archivo • Mejoras en la productividad del desarrollador, como Hot Reload para todos los tipos de proyectos • Mejoras continuas de rendimiento en tiempo de ejecución y tiempo de compilación
  • 8. .NET 6 Previews • .NET MAUI es compatible con Visual Studio • Aplicaciones de escritorio híbridas con ASP.NET Blazor • Minimal web APIs y microservicios más pequeños y rápidos • Más dispositivos, implementación más flexible • Mejoras de rendimiento y productividad dot.net/get-dotnet6
  • 9. .NET Multi-platform App UI (.NET MAUI) • .NET MAUI es un framework multiplataforma para crear aplicaciones nativas de escritorio y móviles con C # y XAML. • Con .NET MAUI, puedes desarrollar aplicaciones nativas que pueden ejecutarse en Android, iOS, iPadOS, macOS y Windows desde una única base de código compartida. • Moderna y de alta productividad.
  • 10. Los SDKs de Xamarin SDKs ahora son .NET for Android iOS macOS Mac Catalyst tvOS .NET Multi-platform App UI (MAUI)
  • 11. .NET MAUI • Interfaz de usuario nativa, multiplataforma • Sistema de proyecto único • Una sola base de código compartido • Implementa en varios dispositivos: móviles y de escritorio • Disponibilidad general en .NET 6 .NET 6 .NET Multi-platform App UI WinUI Mac Catalyst Android iOS iOS macOS github.com/dotnet/maui https://docs.microsoft.com/en-us/dotnet/maui/
  • 12. ¿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
  • 13. ¿Cómo funciona .NET MAUI? .NET Multi-platform App UI App Code iOS macOS
  • 14. ¿Qué ofrece la plataforma? • Más de 40 Controles • Navegación • Flyout Menu • Bottom Tabs • Top Tabs • Jerárquica • Adaptive layouts • Right-to-Left • Accesibilidad semántica
  • 17. Diseñando la UI en .NET MAUI XAML, C#, y MVVM
  • 18. Personaliza controles de .NET con handlers
  • 19. Opciones de estilizado • Tema oscuro y claro • Estilos estáticos y dinámicos • XAML y CSS • Visual State Manager • Fuentes personalizadas y de íconos • Imágenes de distintos formatos (SGV incluido)
  • 20. Personalización de controles #if ANDROID Handlers.EntryHandler .EntryMapper[nameof(IEntry.BackgroundColor)] = (h, v) => { (h.NativeView as global::Android.Views.Entry).UnderlineVisible = false }; #endif #ifdef if platform specific Access the handler from anywhere Dictionary of all props
  • 21. Dibujando UI con Maui.Graphics (Experimental) • Gráficos nativos o SkiaSharp • Fluent y Material design
  • 22. Single Project Simplifica el desarrollo de apps que se implementan en distintas plataformas: • Un solo proyecto • Implementa en múltiples dispositivos y plataformas • Una sola ubicación para recursos (fuentes, imágenes, íconos de aplicación, splash screens, assets) • Organización de código específico de plataforma Productivity
  • 23. Single Project Productivity Simplifica el desarrollo de apps que se implementan en distintas plataformas: • Un solo proyecto • Implementa en múltiples dispositivos y plataformas • Una sola ubicación para recursos (fuentes, imágenes, íconos de aplicación, splash screens, assets) • Organización de código específico de plataforma
  • 24. Fundamentos • Clase App  Punto de entrada de la app • Clase Startup • Registro de fuentes • Registro de handlers • Registro de renderers
  • 25. Hot Reload / Hot Restart soportado Productivity
  • 26. • Conecta cualquier dispositivo iOS directamente a Windows y comienza a escribir código en Visual Studio 2022. • 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és listo para publicar y distribuir, conecta una Mac o usa un servicio en la nube para terminar el trabajo. Productivity
  • 27. Remote iOS Simulator Para obtener más funciones de Apple, conecta Visual Studio 2022 en Windows a una Mac en la red local. Con esto obtienes: • Xcode nativo se compila sobre SSH • Simulador remoto • Soporte de pantalla táctil Productivity
  • 28. Essentials Utiliza Maui.Essentials para acceder a los servicios del dispositivo en todos los destinos .NET MAUI. • Próxima versión de Xamarin.Essentials • Acelerómetro • App Actions • Información de la aplicación • Barómetro • Batería • Portapapeles • Brújula • Conectividad • Y más Bonus
  • 29. Blazor Hybrid Combina tu aplicación Blazor y .NET MAUI para crear una experiencia híbrida perfecta en computadoras de escritorio y dispositivos móviles. • BlazorWebView hospeda la aplicación web. • Accede a cualquier api .NET MAUI desde Razor • Combina web UI y native UI Bonus
  • 30. 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. • Canvas con tipos de dibujo primitivos • Fuentes • Texto con atributos • Mapas de bits • Archivos PDF • Tipos de colores unificados • Soporte de plataforma amplia • Compatible con SkiaSharp Bonus
  • 31. 🐱🏍 .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 .NET MAUI timeline (*) https://github.com/dotnet/maui/wiki/roadmap
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48. Demo Migrando Back2LearnApp (Xamarin.Forms app) https://github.com/icebeam7/Back2LearnApp a .NET MAUI project https://github.com/icebeam7/Back2LearnMauiApp
  • 49. ¿Qué debo usar ahora? ¿Xamarin.Forms o esperar a .NET MAUI? Xamarin.Forms Tu proyecto lo podrás actualizar a .NET MAUI posteriormente
  • 50. Pre-requisitos Para una mejor probabilidad de éxito al migrar a .NET 6 se recomienda: • Actualiza cualquier proyecto PCL a .NET Standard • Actualiza los proyectos Xamarin.Forms a la versión 5.0 • Actualiza packages.config a PackageReference Herramientas recomendadas: • Visual Studio 2022 para Windows o Mac (link) • .NET 6 (link) • .NET Upgrade Assistant (link)
  • 51. Pasos de actualización Ejecuta el .NET Upgrade Assistant para: 1. Respaldar tu proyecto existente 2. Convertir *.csproj al SDK Style 3. Migrar namespaces de Xamarin.* to Microsoft.Maui.* 4. Revisar y reemplazar paquetes NuGet con versiones compatibles de .NET 6 Abre el proyecto en Visual Studio 2022 para: 1. Gestionar las dependencias de NuGet 2. Compilar y corregir errores Tiempo estimado: depende de la complejidad del proyecto (pero no debería ser demasiado…)
  • 52. Compatibilidad de NuGet ¿Cómo saber si se necesita actualizar o reemplazar una dependencia de NuGet? Caso 1 Los NuGets que son .NET Standard y no hacen referencia a ningún tipo de Xamarin.Forms probablemente funcionarán como están. Caso 2 Los NuGets que hacen referencia a los tipos de Xamarin.Forms deben actualizarse a los tipos de Microsoft.Maui.Controls y volver a publicarse con TFM de .NET 6 (Target Framework Moniker)
  • 53. ¿El proyecto se debe migrar a “Single Project”? No, tus proyectos existentes seguirán funcionando sin Single Project. Migraremos los proyectos existentes al sistema de proyecto común de .NET 6. Se proporcionará documentación si desea adoptar Single Project manualmente.
  • 54. ¿Necesito reescribir mis custom renderers? No. Nos aseguramos de que los renderizadores sigan funcionando.
  • 55. Xamarin.Forms a Microsoft.Maui .NET MAUI puede ejecutar Effects y Custom Renderers Actualiza los namespaces en tu implementación de plataforma a Microsoft.Maui 1. Registra tu Effect en Startup.cs: 2. Registra tu Renderer en Startup.cs: No se requiere cambio alguno en XAML appBuilder.ConfigureEffects(builder => { builder.Add<FocusRoutingEffect, FocusPlatformEffect>(); }); appBuilder.ConfigureMauiHandlers(builder => { #if __ANDROID__ handlers.AddCompatibilityRenderer(typeof(CustomEntry), typeof(Droid.Renderers.CustomEntryRenderer)); #endif });
  • 56. Xamarin.Forms a Microsoft.Maui (Opcional) • Migra los Effects y Renderers a la nueva arquitectura de Handlers • Migra soluciones de múltiples proyectos a Single project Ejemplos y recursos: https://github.com/jsuarezruiz/xamarin-forms-to-net-maui
  • 57. ¿Seguirán funcionando las bibliotecas de UI de terceros? ¡Sí! Como mínimo, deberán volver a compilar agregando un target para .NET 6.
  • 58. ¿.NET MAUI podrá ejecutarse en Linux? Linux no es una plataforma compatible con esta versión de .NET MAUI. Hay un backend no oficial implementado con GTK.
  • 59. ¿Qué “sabor” de XAML utilzará .NET MAUI? El mismo XAML que utilizas en Xamarin.Forms hoy en día. Revisaremos algunos cambios de nombres más adelante en los previews.
  • 60. Xamarin.Forms a Microsoft.Maui .NET MAUI usa el mismo XAML y controles que Xamarin.Forms
  • 61. ¿Dónde puedo seguir el progreso? github.com/dotnet/maui Actualizado constantemente con xamarin/xamarin.forms
  • 62. Q & A
  • 63. Invitación: Call for Speakers .NET Conf Latam 2021 https://sessionize.com/dotnetconflatam2021/
  • 64. Invitación: Call for Speakers Global AI Back Together Latinoamérica 2021 https://sessionize.com/global-ai-back-together-latinoamerica-2021/
  • 65. ¡Gracias por tu atención! Luis Beltrán Tomás Bata University in Zlín Tecnológico Nacional de México en Celaya luis@luisbeltran.mx luisbeltran.mx @darkicebeam /icebeam /darkicebeam /luisantoniobeltran /icebeam7 about.me/luis-beltran

Notes de l'éditeur

  1. .NET 6, the next generation of the company’s software development platform that will finish the parts of the .NET unification begun in .NET 5.  Due as a production release in November, .NET 6 is set to deliver improvements for cloud, desktop, and mobile apps.  Microsoft .NET 6 will integrate capabilities for Android, iOS, and MacOS that currently reside in the Xamarin open source mobile .NET platform. Microsoft also is extending the Blazor client web app development tool, so developers can build a hybrid client app that combines web and native UIs for desktop and mobile usage. Blazor WebAssembly was the first unified platform deliverable in .NET 5 The .NET unification creates one .NET from the separate .NET Core, .NET Framework, and Xamarin/Mono technologies. Parts of .NET Framework already had moved to .NET Core; .NET 5 began the journey of combining .NET Core and Mono/Xamarin on a base class library and toolchain.
  2. .NET Multi-platform App UI (MAUI) is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. Using .NET MAUI, you can develop apps that can run on Android, iOS, macOS, and Windows from a single shared code-base. .NET MAUI is open-source and is the evolution of Xamarin.Forms, extended from mobile to desktop scenarios, with UI controls rebuilt from the ground up for performance and extensibility. If you've previously used Xamarin.Forms to build cross-platform user interfaces, you'll notice many similarities with .NET MAUI. However, there are also some differences. Using .NET MAUI, you can create multi-platform apps using a single project, but you can add platform-specific source code and resources if necessary. One of the key aims of .NET MAUI is to enable you to implement as much of your app logic and UI layout as possible in a single code-base.
  3. Las API de Android, iOS, macOS y Windows están unificadas en una API abstracta que permite una experiencia de desarrollo que permita escribir una vez y ejecutar en cualquier plataforma, al tiempo que proporciona un acceso total a todos los aspectos de cada plataforma nativa. App Code interactúa principalmente con .NET MAUI API (1). Según sea necesario, App Code puede acceder directamente las API de la plataforma (2) a través Handlers, etc. .NET MAUI accede directamente las API de la plataforma nativa (3). How is it native? Everything starts with your app code. This is where you want to spend all your time being productive. And you want to deliver your app on 1+ devices The first layer of the technology cake is the native platform SDK. This what Google, Android, and Microsoft ship for those platforms So how do we get from our .NET app code to those platforms and running on devices? First we need something that can run .NET code: the .NET Runtime. (Yes, it uses MonoVM on mobile and Mac, and CoreCLR on Windows, but that’s not terribly important because...) Next we need a common .NET API we can write our code against, and that’s the Base Class Library (BCL). New in .NET 6 app runtimes use the same BCL. To use .NET against native platform SDKs we need a .NET representation of them. We do this via binding a .NET API and implementation to the native API. When you call a native method from C#, it’s just as if you had done it from Obj-C, Swift, Java, Kotlin, or C++. The final layer of the cake that really makes it delicious is .NET MAUI. .NET MAUI provides a rich library of controls, layouts, and services that work across all of the platforms supported, so you need only master one API to get native apps. (next slide) With .NET MAUI, all of that complexity is delivered in a single framework that gives you access to it all.
  4. With .NET MAUI, all of that complexity is delivered in a single framework that gives you access to it all.
  5. You have more than 40 controls, layouts, and pages to mix and match from. These are all of the controls you have out of the box, you can of course create your own. What is unique is you get the native control and have access to it.
  6. And, our partners building controls make much of this possible, creating gorgeous pre-built UI controls for you to drop right in to your app
  7. .NET Multi-platform App UI (MAUI) provides a collection of controls that can be used to display data, initiate actions, indicate activity, display collections, pick data, and more. By default, handlers map these cross-platform controls to native controls on each platform. For example, on iOS a .NET MAUI handler will map a .NET MAUI Button to an iOS UIButton. On Android, the Button will be mapped to a AppCompatButton: Handlers can be accessed through a control-specific interface provided by .NET MAUI, such as IButton for a Button. This avoids the cross-platform control having to reference its handler, and the handler having to reference the cross-platform control. The mapping of the cross-platform control API to the platform API is provided by a mapper. Handlers expose the native control that implements the .NET MAUI cross-platform control via the NativeView property. This property can be accessed to set platform properties, invoke platform methods, and subscribe to platform events. Handlers are global and therefore customization can occur anywhere in your .NET MAUI app. For example, customizing a handler for a control in your App class will result in all controls of that type being customized in the app. Similarly, customizing a handler for a control in the first page of your app will also result in all controls of that type in the app being customized.
  8. The new handler architecture makes it easy to hook into any property and add/modify behavior right in .NET MAUI In this example we hook into the background color and change the Android underline visibility on the Entry. We could also, with a little more effort, add a custom property mapping specific to the underline and implement that with almost identical code.
  9. One project can now publish to any of the platforms supported. Images are optimized at build time for the multiple densities of screens required across all the platforms you target. Fonts are registered in one location for every platform, and you can alias the name as you desire. Platform code can all live within this one, multi-targeted project. Splash screen support makes it easy to declare a visual asset (PNG or SVG for example) and a background color.
  10. The App class should derive from the Application class, and must override the CreateWindow method to provide a Window within which your app runs, and that defines the UI for the initial page of the app: In the example above, MainPage is a ContentPage that defines the UI for the initial page of the app. To register your own handlers, call the ConfigureMauiHandlers method on the IAppHostBuilder object. Then, on the IMauiHandlersCollection object, call the AddHandler method to add the required handler: In this example, the MyEntryHandler handler is registered against the MyEntry control. Therefore, any instances of the MyEntry control will be handled by the MyEntryHandler.
  11. Code live whether it’s C#, CSS, Razor, or XAML. Less time building and more time coding. In a future Visual Studio 2022 release you’ll also be able to see your app right inside the IDE where you can inspect elements and set UI guides. (this is showing Xamarin.Forms and will be replaced with a .NET MAUI example. Same technology)
  12. Aka “Hot Restart” enables you to use your Apple developer account, a Windows dev machine, and any iOS device to build and test iOS apps.
  13. Code live whether it’s C#, CSS, Razor, or XAML. Less time building and more time coding. In a future Visual Studio 2022 release you’ll also be able to see your app right inside the IDE where you can inspect elements and set UI guides. (this is showing Xamarin.Forms and will be replaced with a .NET MAUI example. Same technology)
  14. Github.com/dotnet/maui/wiki/roadmap