Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

251
Vistas
¿Cuál es la diferencia entre MAUI y Uno Platform?

Estoy un poco confundido. ¿Alguien puede explicar exactamente cuál es la diferencia entre los dos? ¿Cuándo debemos usar MAUI y cuándo UNO? Como me di cuenta, ambos pueden ejecutarse en diferentes plataformas, entonces, ¿cuál es la razón para introducir dos tecnologías diferentes al mismo tiempo? ¿Pueden ejecutarse en Windows 7? ¿O solo se limitan a Windows 10? ¿Puede mi programa WPF ejecutarse en Linux con estas dos tecnologías?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

He estado desarrollando con Xamarin.Forms (que pasará a llamarse MAUI) durante más de cinco años y Uno Platform durante cuatro meses. Hay una serie de diferencias que, para mí, hicieron que valiera la pena pasar de Xamarin.Forms a Uno. Primero, las similitudes:

  • Ambos son marcos multiplataforma de C#
  • Ambos tienen soporte XAML
  • Ambos son compatibles con iOS, Android, la plataforma universal de Windows y (en menor medida) Mac OS a través de los marcos de la plataforma Xamarin que no son .Forms.
  • Xamarin.Essentials funciona tanto con Xamarin como con Uno en las plataformas anteriores
  • Ninguno tiene soporte incorporado para impresión, generación de PDF o generación de PNG.

Ahora las diferencias:

  • Desde el punto de vista arquitectónico, Xamarin.Forms es su propia capa de abstracción por encima de las API nativas, mientras que Uno crea interfaces UWP sobre las API nativas. Esta es, en mi opinión, la diferencia más importante por tres razones:
    • En Android, la abstracción de Xamarin.Forms incluye la gestión de medidas y diseño. Esto es MUY CARO y, para todas las vistas de lista excepto las más simples, da como resultado un rendimiento muy bajo. Uno, por el contrario, realiza esto en la capa nativa, evitando así la magnitud de pasar de un lado a otro entre Java y C#.
    • En WASM, Xamarin renderiza a través de Blazor, lo que permite aplicaciones híbridas de servidor/cliente. Desafortunadamente, esto agrega complejidad en comparación con el enfoque que ha adoptado Uno. Aún está por verse si el enfoque de Xamarin tiene una penalización de rendimiento.
    • Debido a que Uno construye UWP sobre los marcos de IU nativos, es bastante sencillo abrir las cubiertas y realizar cambios profundos en la función. Es mucho más difícil (si no imposible en algunos casos) hacerlo en Xamarin.Forms.
  • Uno tiene un fuerte soporte para WPF (así que sí, puede ejecutarse en Windows 7), Tizen y Linux (GTK).
  • Uno es compatible con la complejidad de UWP XAML, que, si tiene experiencia con WPF o UWP, tiene algunas ventajas importantes. De lo contrario, se perderá para ti, como lo ha sido para mí. Espero cambiar eso.
  • Uno es compatible con las bibliotecas WinUI y Windows Community Toolkit.
  • Aunque no puedo estar seguro de esto, creo que Xamarin.Forms existe desde hace 2 o 3 años más que Uno Platform. Dicho esto, Uno ha alcanzado rápidamente a Xamarin en función y calidad de código. Creo que esto se debe, en parte, a que UWP es una especificación operativa muy madura.
  • En mi experiencia de migrar un proyecto de aproximadamente 132 000 líneas de código Xamarin.Forms a Uno, Uno fue significativamente menos detallado, con aproximadamente 65 000 líneas. Casi toda esa reducción se produjo en líneas de código de interfaz de usuario (los modelos, los modelos de vista y la lógica comercial casi no se modificaron). Esto se debió en gran parte a la gran cantidad de funciones que pueden tener los controles UWP (Uno).

Por último, preguntó si su programa WPF puede ejecutarse en Linux con estas dos tecnologías. La respuesta es

  • Xamarin.Forms: No. Linux no es compatible;
  • Plataforma Uno: No, pero es posible migrar su código. El esfuerzo sería casi el mismo que migrar su programa de WPF a UWP.

Su experiencia puede ser diferente. Sin embargo, si tiene experiencia con WPF o UWP, le recomiendo Uno. Si no tiene experiencia con ninguno de los dos, recomendaría Uno debido al rendimiento superior con Android.

over 4 years ago · Santiago Trujillo Denunciar

0

Una perspectiva diferente es que en este momento solo se puede comparar UNO con lo que Xamarin.Forms hace HOY. Si eres miembro de los equipos de MAUI, entonces deberías iluminar el camino, pero yo no. Realmente no sabe qué cambios estructurales se están realizando para tener un mayor rendimiento y, últimamente, Microsoft ha puesto mucho énfasis en el rendimiento, por lo que supongo que seguramente trabajarán duro en la división Java/C#.

Otra cosa a considerar es que MAUI es una API de Microsoft, UNO no lo es (en este momento) Wo sabe en el futuro, Microsoft tiende a comprar la tecnología que les gusta y se ajusta a la visión.

SI necesita un desarrollo multiplataforma ahora, está comparando entre UNO que está disponible en este momento y Xamarin.Forms. MAUI se anuncia para 2021 si no se retrasa.

Ahora, para responder a su pregunta real: puede ejecutar WPF hoy en Linux usando .NET Core, no necesita esperar a MAUI o salir de las API de Microsoft.

over 4 years ago · Santiago Trujillo Denunciar

0

El equipo de Uno también ha cubierto esta pregunta en los documentos: https://platform.uno/docs/articles/intro.html#how-is-uno-platform- different-from-net-maui

Las aplicaciones de Uno Platform son multiplataforma, se ejecutan en la web, así como en dispositivos móviles y de escritorio, por igual, desde una única base de código. Blazor es una función de ASP.NET para crear principalmente aplicaciones web.

Las aplicaciones de Uno Platform están escritas en código C# y XAML, mientras que las aplicaciones Blazor están escritas en sintaxis 'Razor', un híbrido de HTML/CSS y C#.

Uno Platform y Blazor utilizan la compatibilidad con WebAssembly de .NET para ejecutarse de forma nativa en el navegador.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda