Avalonia mes avantages et inconvénients

J'écris beaucoup sur Avalonia et j'admire souvent ce cadre, mais, comme toute technologie, il a ses propres avantages et inconvénients, et j'aimerais en parler.


Avalonia


Qu'est-ce que c'est? Tout d'abord, il s'agit d'un framework gui xaml multiplateforme pour le framework .net, le core .net et les plateformes mono .

Que signifient ces mots?

Avalonia est un ensemble de bibliothèques qui vous permettent de créer une application fenêtrée et de l'exécuter sur toutes les plates-formes de bureau populaires.


De plus, je vais vous proposer, lecteurs, mon raisonnement personnel, je ne veux pas critiquer \ louer Avalonia en tant que technologie distincte, mais simplement parler de tout le complexe de la création d'une application pour un PC utilisant cette technologie.

Ce que j'aime


Premièrement , la facilité de démarrage, si vous êtes familier avec les technologies .net telles que wpf \ uwp, cela ne vous prendra pas plus de 5 minutes pour obtenir Avalon. Tout ce que vous avez à faire est de télécharger le modèle sur le site Web d'Avalonia et de créer un projet, c'est tout - pas de danser avec un tambourin pour monter un projet Linux ( salut un autre framework populaire ).

Deuxièmement , la prise en charge de xaml - cela conduit à de nombreuses fonctionnalités pratiques: mvvm, classeurs, séparation de la vue et de la logique métier, stylisation par des fichiers séparés.

Troisièmement , l'emprunt ou une certaine compatibilité (appelez-le comme vous voulez) avec wpf. Cela signifie que si vous n'avez jamais travaillé avec Avalonia, mais que vous connaissez wpf, vous pouvez simplement prendre les commandes que vous avez l'habitude de travailler avec wpf, et dans 90% des cas, votre application démarrera immédiatement. Cela signifie également que pour résoudre votre problème, vous pouvez trouver une solution similaire pour wpf, et dans la plupart des cas, cela résoudra également votre problème.

Quatrièmement , les styles - Avalonia a été inspiré par le CSS dans une certaine mesure, ce qui a conduit à l'apparition de classes et de pseudo-classes lors de la stylisation, ce qui a simplifié l'écriture des styles et leur compréhension.

Cinquièmement , multiplateforme - ce qui signifie, une fois écrit et exécuté partout. Il est important de noter qu'Avalonia utilise des technologies natives pour fonctionner: Direct2D, MonoMac, etc. De plus, Avalonia reprend le décor du système:


Sixièmement , le soutien aux développeurs: dans les salles de chat, en anglais et en russe, vous pouvez contacter directement les développeurs et ils répondront très probablement à votre question.

Ce que je n'aime pas


Premièrement , c'est toujours un framework humide, et parfois vous pouvez trouver des bugs, oui, Avalonia a beaucoup augmenté au fil des ans et pour le moment tout bug peut être résolu ( sauvegardé avec une béquille ), mais vous pouvez déjà parler de la stabilité de la technologie, comme le notent les développeurs eux-mêmes - il Je suis arrivé au magasin d'alimentation.

Deuxièmement , une performance plutôt faible, c'est-à-dire J'ai eu un drôle de projet pour animaux de compagnie, où j'ai jeté des milliers de contrôles dans une fenêtre, et wpf l'a calmement géré (normes 10k, n'a pas testé plus loin), Avalonia a donné des frises et le pire le pire (quelque part autour de 3k éléments)

Troisièmement , la technologie est jeune - la communauté est également petite, vous pouvez donc être bloqué par le fait que personne n'a résolu le problème auquel vous êtes confronté.

Ce que je manque à Avalonia


Premièrement , il est facile de concevoir des packages de style prêts à l'emploi, comme metro \ material, mais parfois vous voulez utiliser celui qui est prêt à l'emploi et ne pas y penser.

Deuxièmement , les liaisons multimédias, il n'y a pas de support multiplateforme pour les sons et les vidéos, et cela n'est pas inclus et ne sera pas (au moins dans un proche avenir) inclus dans les tâches des développeurs, si vous voulez un son multiplateforme - écrivez-le vous-même ou faites glisser des étrangers.

Troisièmement , la prise en charge des fonctionnalités actuelles de la plate-forme, la minimisation de la barre d'état, les icônes de notification sur les raccourcis, etc., mais ici, vous devez rendre hommage aux développeurs - à chaque version, la situation s'améliore rapidement.

Pour résumer


Avalonia est-il prêt à sortir - je pense que oui, mais pas à moi de juger - essayez-le, regardez. Après tout, comme on dit: «Il vaut mieux voir une fois que d'entendre 100 fois»

Je voudrais dire merci à ForNeVer kekekeks worldbeater

Et notez que le support pour c # peut être trouvé ici , et pour Avalonia ici .

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


All Articles