Accueil > Découvrir MAUI, la technologie qui remplace Xamarin Forms
Madina Delleci
6 avril 2022
Read this post in English

Découvrir MAUI, la technologie qui remplace Xamarin Forms

MAUI la technologie qui remplace Xamarin Forms

Article corédigé par Madina Delleci et Rémi Eynard

 

MAUI est une technologie multiplateforme permettant de développer des applications mobiles (iOS et Android) et bureau (Windows et Mac). Basée sur les technologies et les langages Microsoft .NET6, C# et XAML, MAUI permet de générer une application native à partir d’un code source unique.

MAUI est une refonte de Xamarin Forms. En effet, historiquement, Xamarin Native permettait de consolider le code métier. L’interface devait être développée pour chaque plateforme cible, mais en C#. En 2014, Xamarin Forms a ajouté à Xamarin Native une surcouche permettant de consolider le code de l’interface. Avec une sortie prévue en avril 2022, MAUI constitue une refonte totale en .NET 6 de Xamarin Forms, dont elle reprend tous les concepts.

 

Quels sont les avantages de MAUI ?

 

Bien qu’encore récente, MAUI est une technologie solide, très visuelle et simple d’utilisation, qui présente de nombreux avantages :

  • Plusieurs plateformes cibles pour un seul code partagé: en effet, plus de 95% du code sont effectivement partagés pour l’ensemble des plateformes.
  • Une technologie basée entièrement sur la stack .NET, ce qui permet de disposer d’un spectre technologique solide (fortement typé), de rationaliser les compétences de développement sur l’ensemble d’un Système d’Information (SI) et de bénéficier de l’ensemble des composants Nuget de l’écosystème .NET.
  • Un rendu très visuel: la conception de l’interface graphique en XAML prend une approche d’arborescence (balise), ce qui permet de se projeter plus facilement sur le rendu final de l’application.
  • Des développements simplifiés et une maintenabilité améliorée grâce au système de binding, couplé au framework MVVM, qui permet de séparer totalement l’interface et la logique métier. Selon ses préférences, le développeur peut toutefois développer via d’autres langages ou d’autres frameworks : il peut ainsi, par exemple, réaliser le style en CSS ou utiliser une syntaxe déclarative (MVU ou autre).
  • Une adaptation visuelle automatisée : le rendu visuel s’adapte automatiquement aux particularités de la plateforme cible. Il peut être totalement modifié très simplement via le système de handlers et de templates.
  • Un outillage complet porté par Visual Studio: grâce à la suite Microsoft Visual Studio, tout est prévu pour simplifier le travail du développeur : hot reload (développement en « live » sur un téléphone), compilation et exécution Mac à distance même depuis un poste Windows, etc.
  • Une technologie gratuite et open source: bien que maintenue en grande partie par Microsoft, MAUI est accessible librement à tous sur GitHub, avec tous les avantages procurés habituellement par les solutions open source.

 

Les inconvénients de MAUI

 

MAUI sortira officiellement en avril 2022 : il s’agit donc d’une technologie encore en transition et une phase de migration (via un outil fourni) sera nécessaire pour faire basculer les applications Xamarin Forms vers cette nouvelle technologie. Une situation d’entre-deux qui explique que certaines équipes hésitent encore à démarrer leurs nouveau projet sur l’une ou l’autre de ces technologies.

Sur Xamarin Forms, dont MAUI est une refonte, certaines opérations – notamment le lancement de l’application – étaient réputées lentes. C’est en partie ce qui a motivé la refonte vers MAUI, qui s’avère heureusement plus performante.

Enfin, bien que le socle .NET/C# soit un avantage, les compétences XAML sont encore peu répandues sur le marché de l’emploi, contrairement à d’autres langages, même si XAML et MVVM sont également employés sur d’autres technologies.

 

Les recommandations de Cellenza sur l’utilisation de MAUI & Xamarin Forms

 

Alors, faut-il utiliser MAUI plutôt que Xamarin Forms pour de nouveaux développements ? A date, nous recommandons de partir directement sur MAUI, le framework nous semblant suffisamment stable dans le cadre de la phase de Build.

Un nombre important de fonctionnalités ne sont pas directement incluses dans le SDK MAUI / Xamarin Forms, mais font l’objet de composants séparés qui sont particulièrement pertinents, comme MAUI Essentials qui permet par exemple d’interagir avec le téléphone.

Par ailleurs, nous recommandons une architecture autour du framework MVVM. Une approche « MVVM strict » (c’est-à-dire qui limite au maximum le code de l’interface en faveur des concepts de binding) permet d’améliorer la lisibilité et la maintenabilité.

Enfin, nous préconisons une approche totalement vectorielle pour le rendu visuel, y compris pour les pictogrammes de l’application, en privilégiant le format SVG plutôt que PNG.

 

Cas pratique

 

Début 2021, Cellenza Sud-Est a accompagné une société de ventes privées de vin en ligne dans le cadre de la refonte de son application mobile.

Sachant que la sortie de MAUI était prévue pour mi-2022, les experts Cellenza ont conseillé leur client dans le choix de la technologie. L’application a été redéveloppée entièrement en Xamarin Forms, tout en anticipant la migration vers .NET MAUI en 2022.

Le développement s’est déroulé sur 5 mois avec une équipe de 4 personnes. L’application est actuellement en production sur les stores.

 

Tout savoir sur le développement d’applications mobile

Vous vous apprêtez à développer votre application mobile ? Le choix de la technologie est important ! Découvrez l’ensemble de nos articles présentant les avantages et inconvénients des différentes technologies :

 

Formation Microsoft AZ204

 

Nos autres articles
Meet .NET MAUI, the Technology Replacing Xamarin.Forms
Kotlin : le nouveau Java ?
Kotlin est un langage de programmation orienté objet et fonctionnel principalement développé par JetBrains. Conçu pour pouvoir être compilé pour...
Commentaires
Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Restez au courant des dernières actualités !
Le meilleur de l’actualité sur le Cloud, le DevOps, l’IT directement dans votre boîte mail.