Avalonia mis pros y contras

Escribo mucho sobre Avalonia y a menudo admiro este marco, pero, como cualquier tecnología, tiene sus propias ventajas y desventajas, y me gustaría hablar sobre ellas.


Avalonia


Que es esto En primer lugar, es un framework gui xaml multiplataforma para .net framework, .net core y mono plataformas .

¿Qué significan estas palabras?

Avalonia es un conjunto de bibliotecas que le permiten crear una aplicación con ventana y ejecutarla en todas las plataformas de escritorio populares.


Además, les ofreceré a ustedes, lectores, mi razonamiento personal, no quiero criticar \ alabar a Avalonia como una tecnología separada, sino simplemente hablar sobre todo el complejo de crear una aplicación para una PC usando esta tecnología.

Lo que me gusta


En primer lugar , la facilidad de inicio, si está familiarizado con las tecnologías .net como wpf \ uwp, no le llevará más de 5 minutos obtener Avalon. Todo lo que necesita hacer es descargar la plantilla del sitio web de Avalonia y crear un proyecto, eso es todo: no bailar con una pandereta para armar un proyecto de Linux (en otro marco popular ).

En segundo lugar , soporte para xaml: de esto se derivan muchas características convenientes: mvvm, carpetas, separación de vista y lógica empresarial, estilización por archivos separados.

En tercer lugar , pedir prestado o alguna compatibilidad (llámalo como quieras) con wpf. Esto significa que si nunca ha trabajado con Avalonia, pero está familiarizado con wpf, puede simplemente tomar los controles que está acostumbrado a trabajar con wpf, y en el 90% de los casos su aplicación se iniciará de inmediato. También significa que para resolver su problema puede encontrar una solución similar para wpf, y en la mayoría de los casos también resolverá su problema.

Cuarto , los estilos: Avalonia se inspiró en CSS en cierta medida, lo que llevó a la aparición de clases y pseudo-clases durante la estilización, lo que simplificó la escritura de estilos y su comprensión.

Quinto , multiplataforma, lo que significa, una vez escrito y ejecutado en todas partes. Es importante tener en cuenta que Avalonia utiliza tecnologías nativas para trabajar: Direct2D, MonoMac, etc. Además, Avalonia recoge el escenario del sistema:


Sexto , soporte para desarrolladores: en las salas de chat, tanto en inglés como en ruso, puede comunicarse directamente con los desarrolladores y lo más probable es que respondan su pregunta.

Lo que no me gusta


En primer lugar , sigue siendo un marco húmedo y, a veces, puedes encontrar errores, sí, Avalonia ha crecido mucho a lo largo de los años y en este momento cualquier error puede resolverse ( respaldado con una muleta ), pero ya puedes hablar sobre la estabilidad de la tecnología, como lo notan los propios desarrolladores. Llegué a la tienda de comida.

En segundo lugar , un rendimiento bastante débil, es decir Tuve un proyecto divertido para mascotas, donde arrojé miles de controles en una ventana, y wpf lo enfrenté con calma (10k normas, no probé más), Avalonia dio frisos y cuanto más peor (en algún lugar por 3k elementos)

En tercer lugar , la tecnología es joven: la comunidad también es pequeña, por lo que puede quedarse atrapado con el hecho de que nadie ha resuelto el problema que le enfrentó.

Lo que extraño en Avalonia


En primer lugar , es fácil diseñar paquetes de estilo listos para usar, como metro \ material, pero a veces quieres usar uno listo y no pensar.

En segundo lugar , los enlaces de medios, no hay soporte multiplataforma para sonidos y videos, y esto no es y no (al menos en el futuro cercano) entrará en las tareas de los desarrolladores, si desea un sonido multiplataforma: escríbalo usted mismo o arrastre a extraños.

En tercer lugar , soporte para las características actuales de la plataforma, minimizando a la bandeja, iconos de notificación en accesos directos, etc., pero aquí debe rendir homenaje a los desarrolladores: con cada lanzamiento, la situación está mejorando rápidamente.

Para resumir


¿Está Avalonia lista para salir? Creo que sí, pero no para que yo juzgue. Pruébalo, mira. Después de todo, como dicen: "Es mejor ver una vez que escuchar 100 veces"

Me gustaría dar las gracias a ForNeVer kekekeks worldbeater

Y tenga en cuenta que el soporte para c # se puede encontrar aquí , y para Avalonia aquí .

Source: https://habr.com/ru/post/471728/


All Articles