image

Avec MAUI, Microsoft achève l’intégration de son framework d’applications mobiles à la plateforme .NET

image
Carl-Stephan Parent
26 novembre 2020

Xamarin.Forms évolue en .NET Multi-platform App User Interface (MAUI). Cet article nous donne tout d’abord l’opportunité de revenir sur l’histoire de Xamarin et les principaux points forts du framework mobile de Microsoft. Nous vous présentons les changements prévus prochainement et les raisons de cette évolution stratégique pour l’éditeur de Redmond.

Schéma présentant les avantages de .NET MAUI.

De Xamarin à Xamarin.Forms : piqûre de rappel sur l’un des frameworks de développement d’applications mobiles

Xamarin offre la possibilité de développer des applications cross-platform fonctionnelles sur iOS, Android et Windows depuis 2011. Une liste qui s’est progressivement agrandie et qui inclut désormais macOS, Tizen et Linux. Xamarin se base sur le langage C# et permet le partage de code entre les différentes plateformes évoquées ci-avant. Son utilisation des frameworks de chaque plateforme propriétaire offre la possibilité de réaliser des applications cross-platform dont les performances n’ont pas à rougir comparées à celles affichées par les applications natives.

Xamarin a été pensé pour respecter les pré-requis de chaque OS en matière d’interface utilisateur : par exemple storyboard pour iOS et macOS, *.xml pour Android etc. Une excellente pratique qui respecte les usages et améliore l’UX. Xamarin.forms voit néanmoins le jour en 2014 afin de permettre le développement d’une UI commune avec C#/XAML. Ce système permet d’effectuer la liaison entre un composant Forms et son équivalent natif. Sur iOS par exemple, un Button sur Forms utilisera le composant natif UIButton pour s’afficher. Avec Xamarin.Forms, la part du code partagé entre les plateformes augmente considérablement et peut atteindre 99%.

C’est en 2016 que Microsoft acquiert Xamarin qui devient alors gratuit et open-source. Depuis, Xamarin et Xamarin.Forms ont toujours été mis à jour régulièrement pour suivre les avancées des plateformes natives et donner aux développeurs .NET de nouveaux outils.

.NET MAUI va permettre d’améliorer la productivité et la polyvalence des équipes de développement

Présenté lors de la Microsoft Build 2020, .NET MAUI est une ultime évolution de Xamarin.Forms. Microsoft achève ainsi de réunir l’ensemble de ses produits au sein d’un même cadriciel d’abord initié par le .NET Core puis confirmé plus récemment lors de la sortie de .NET 5. L’objectif de la firme de Redmond est d’offrir un kit de composants logiciels structurels exhaustif qui doit permettre d’une part d’accroître significativement la productivité des équipes de développement et d’autre part d’augmenter leur polyvalence (logiciels métiers, sites Internet, intranet, extranet, applications mobiles, API…). Xamarin.Forms entrera donc lors de la release .NET 6 dans le rang aux côtés d’ASP.NET Core, Entity Framework Core, WPF etc.

Schéma présentant l'ensemble des briques qui constituent la plateforme .NET
Microsoft a pour objectif de fournir un seul environnement .NET et des outils qui peuvent être utilisés de manière identique et fournir un résultat similaire sur les différentes plateformes.

MAUI : de nombreuses améliorations de Xamarin déjà annoncées pour 2021

.NET MAUI et NET 6 apporteront de nombreux ajouts au framework, la liste finale des évolutions est toujours en cours d’établissement mais voici les changements qui ont d’ores et déjà été confirmés.

Xamarin devient .NET for iOS et .NET for Android 

Au revoir les logos Xamarin et les singes mascottes qui prendront leur retraite sur l’île Maui. Les outils Xamarin sont renommées : .NET for iOS pour Xamarin.iOS, .NET for Android pour Xamarin.Android et .NET MAUI pour Xamarin.Forms. Les namespaces changeront également pour mieux s’intégrer dans .NET : par exemple, System.Maui pour Xamarin.Forms ou System.Devices pour Xamarin.Essentials.

Nouvelle mascotte dotnet-bot surfant sur une vague.
La mascotte dotnet-bot présentée en version MAUI à la Microsoft Build 2020

Le développement d’applications mobiles encore simplifié : un seul projet à créer au lieu de trois !

Aujourd’hui, sur un projet en Xamarin.Forms il faut à minima créer un projet Forms puis un projet par plateforme (le plus souvent un projet Android et un projet iOS). Avec MAUI, il n’y aura plus qu’un seul projet où il sera toujours possible de gérer les spécificités entre les plateformes.

Slim Renderers

Les moteurs de traductions des composants XAML en composants natifs seront améliorés pour être encore plus performants dans cette nouvelle version.

Visual Studio Code

Il sera possible d’utiliser VS Code en plus de l’historique Visual Studio pour travailler sur une solution .NET MAUI.

Support du pattern MVU

En plus du traditionnel Model-View-View-Model (MVVM), les développeurs pourront désormais implémenter le pattern Model-View-Update (MVU) aussi connu sous le nom d’architecture Elm. Ce modèle est éprouvé depuis des années dans le monde du développement Web et aussi utilisé sur Flutter.

Transition Xamarin.Forms vers MAUI

MAUI est une évolution de Xamarin.Forms et, bien qu’apportant son lot de nouveautés, une grande partie de ce qui fait Xamarin.Forms aujourd’hui sera conservé. Des outils de migrations seront proposés pour réussir la transition des applications existantes.

Roadmap 2020-2021

Une première preview est prévue pour cette fin d’année 2020 et une version stable en novembre 2021 à l’occasion de la sortie de NET 6.

Microsoft entend placer le C#/XAML comme la référence pour la réalisation de logiciels professionnels

Nous sommes très enthousiastes à l’idée de pouvoir travailler avec MAUI. En intégrant son framework de développement mobile à .NET, Microsoft entend pérenniser ses outils et place le C#/XAML comme la référence pour la réalisation de logiciels professionnels. Son intégration dans .NET rend encore plus facile le partage de code entre les différents types de projets (site web, api, application mobile, application desktop…). Ce tournant et ses bonnes performances, notamment grâce à son utilisation des éléments natifs de chaque plateforme, font de Xamarin, et bientôt MAUI, un excellent choix de framework pour le développement d’une application professionnelle cross-platform.

image
image
Pôle Conseil
23 juin 2021
Ecommerce

Le top des sites e-commerces mobiles

Afin de dresser un état des lieux du e-commerce mobile en France, notre pôle conseil s’est prêté à l’exercice de l’analyse du top 100 des sites RWD (Responsive Web Design) des e-commerçants. Le top 100 : vue générale du classement des sites e-commerces mobiles En passant à la loupe les sites e-commerces les plus fréquentés […]
image
image
Équipe iOS
11 juin 2021
Développement application mobile

Les 7 points clefs à retenir de la WWDC 2021

Pour cette seconde édition 100 % numérique, imposée par la crise sanitaire de la Covid-19, la WWDC 21 a fait le plein de nouveautés, en mettant l’accent sur le contrôle et la protection des données privées. L’enseigne californienne a profité de cette édition de la Worldwide Developers Conference pour exposer de nombreuses nouveautés avec la présentation […]
image
image
Carl-Stephan Parent
10 juin 2021
Agence application mobile

Développer une application mobile avec Ionic

Après nous être précédemment consacrés aux PWA (Progressive Web App) puis à Phonegap et Adobe Air, nous ne pouvions poursuivre ce tour d’horizon des outils et technologies dédiés au développement d’applications mobiles sans consacrer ce nouvel article à Ionic, le framework dont la prochaine conférence annuelle se tiendra le 23 juin prochain. Ionic est une […]
image
image
Carl-Stephan Parent
26 mai 2021
Agence application mobile

Développement d’application mobile : Adobe AIR

Nous poursuivons notre tour d’horizon des technologies aujourd’hui disponibles pour réaliser des applications mobiles iOS et Android. Après nous être intéressés aux PWA puis à Cordova, nous allons aborder la seconde tentative d’Adobe pour s’imposer comme un acteur majeur du développement mobile. Il s’agit du framework multiplateforme Adobe AIR. Adobe AIR : un moteur d’exécution […]
image
image
Pôle Conseil
25 mai 2021
Agence application mobile

E-commerce et m-commerce, pourquoi les apps mobiles séduisent les consommateurs

Les applications et sites web mobiles m-commerce offrent la possibilité de capter des audiences de plus en plus larges puisqu’ils sont ergonomiquement plus adaptés à l’utilisation d’écrans tactiles. Le temps d’interaction homme-mobile est très élevé de nos jours, c’est pourquoi, il doit être exploité par toute enseigne qui souhaite avoir une présence digitale, ou bien […]
image
image
Carl-Stephan Parent
19 mai 2021
Agence application mobile

Cordova : faut-il encore développer une application mobile iOS et Android avec ce framework hybride ?

Après nous être consacrés aux PWAs, nous poursuivons notre tour d’horizon des technologies mobiles en nous penchant cette fois-ci sur un framework hybride parmi les premiers à avoir mis les technologies web au service du développement d’applications mobiles. Il s’agit de Cordova, la plateforme de développement mobile de la Fondation Apache. Cordova : le fork […]
image
image
Pôle Conseil
29 avril 2021
Agence application mobile

UX Design et application mobile

Lors de la conception d’une application mobile, l’expérience utilisateur (UX) agit comme un différenciateur d’envergure. L’UX permet d’offrir une proposition de valeur unique. Au final, une bonne UX mobile aide à générer plus de revenus et à bâtir ou consolider la réputation de la marque. C’est une réalité incontestable, depuis que l’usage du smartphone s’est […]
image
image
Pôle Conseil
25 mars 2021
UX design

SXO : la tendance qu’il faut suivre en matière de référencement naturel

Le SXO (Search eXperience Optimization) est une nouvelle discipline qui considère désormais l’UX (User eXperience) comme un critère déterminant en matière de référencement naturel. Cette nouvelle branche du SEO (Search Engine Optimization) ne cesse de gagner de l’importance depuis 2018, en réponse aux grandes mutations des processus de recherche d’information sur la toile. Avec une population de plus […]
image
image
Équipe Android
26 février 2021
Agence application mobile

Google dévoile Android 12 à travers un premier aperçu réservé aux développeurs d’applications mobiles

Ce jeudi 18 février 2021, la première preview d’Android 12 est officiellement sortie des cartons de Google. Des nombreuses optimisations aux adaptions aux standards modernes, voici un tour d’horizon de ce qui nous attend dans la prochaine version d’Android. Comment Google améliore la gestion de la vie privée au sein d’Android 12 Le premier objectif […]
image
image
Jason Dejaégère
27 novembre 2020
UI design

Tendances et inspirations UI du moment dans le monde digital #1

Bien le bonjour ! 🖖 C’est avec grand plaisir qu’IKOMOBI vous présente sa nouvelle série mensuelle. Vous vous demandez de quoi ça parle ? Et bien, c’est tout simple. Cette série est un condensé des sites ou applications qui ont marqué, interpelé voire impressionné les membres du studio design. Une sélection d’une dizaine d’interfaces innovantes, […]
image
image
Carl-Stephan Parent
26 novembre 2020
Marketing digital

Applications mobiles : profitez de leurs avantages marketings incontournables.

Traditionnelles, ou bien tout ou partie digitales, aucune organisation n’échappe aujourd’hui à la question de la place qu’il convient d’octroyer au mobile au sein de sa stratégie digitale. Depuis maintenant plus de dix ans, le champ des possibles offert par les applications mobiles n’a eu cesse de s’agrandir, offrant toujours plus d’opportunités de créer un […]
Message bien envoyé !