Tout développeur C# peut devenir développeur pour mobile : tel est le leitmotiv des concepteurs de Xamarin. Cette technologie permet de développer des applications natives cross-plateformes (Android, iOS, Windows Phone) grâce au seul langage de programmation C#.

Quels sont les avantages de Xamarin ?

  • Le développement en C# suffit : il n’est donc pas indispensable de maîtriser Java, habituellement utilisé sous Android, ou ObjectiveC, sous iOS.
  • Qui dit applications natives dit aussi performances natives : en s’adaptant aux spécificités de chaque plateforme, elles offrent une expérience utilisateur optimale, à travers des fonctionnalités riches et une parfaite intégration à l’OS.
  • environ 75% du code d’une application peut être réutilisé entre chaque plateforme mobile. Xamarin s’appuie sur cette base de code commun pour éviter les écueils du travail en silo, impliquant notamment l’utilisation de langages et d’environnements de développement distincts.
  • Xamarin offre une solution complète pour le cycle de vie d’une app mobile : Build – Test – Distribute – Learn.
  • Suite à son rachat par Microsoft, Xamarin est devenu une technologie Microsoft à part entière, qui s’intègre avec tous ses outils de développement (e.g. Visual Studio) et autres technologies (Cloud Azure, SqlServer, ASP.NET MVC & WebAPI,…).

Comment fonctionne Xamarin ?

Le développement s’effectue en C#, un langage puissant et riche en fonctionnalités. La base de code commun est le point de départ du projet : elle comprend notamment la couche métier et fonctionnelle, le stockage en DB, certains éléments d’interface, etc.

Ensuite, s’ajoutent les spécificités propres à chaque plateforme : l’interface graphique, la navigation et les composants de chaque SDK. Ces spécificités induisent un découpage en projets par plateforme. Ainsi, outre le projet commun sous forme de Base Class Library (BCL) et de Portable Class Library (PCL), on développe un projet Android et un projet iOS, avec leurs ressources graphiques et fonctionnalités respectives.

Android autorise la compilation Just In Time (JIT) : le code est exécuté par la machine virtuelle Mono. En revanche, iOS empêche l’exécution de toute machine virtuelle : une compilation Ahead of Time (AOT) est nécessaire pour générer du code binaire natif.

Notons également que Xamarin supporte le pattern MVVM et le langage de description d’interface XAML, offrant des opportunités supplémentaires en termes de portage du code.

Pour en savoir plus sur le fonctionnement et les avantages de Xamarin, inscrivez-vous à notre nouvelle formation « Concevoir des applications mobiles multi-plateformes avec Xamarin« 

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>