Développement Xamarin

Publié le 2017-03-24

  • Développement Xamarin

Le marché du Smartphone est aujourd’hui en pleine expansion, il en devient essentiel pour les entreprises de pouvoir proposer à leur client des produits évolutifs et compatibles avec un maximum de technologies.

 

Un client souhaite faire développer une application Android pour ensuite vouloir la rendre disponible sur iOS. Le temps de se former au développement Android puis au développement iOS serait bien trop long et obligerait à avoir deux codes différents. Il existe heureusement une solution.

Récemment rachetée par Microsoft en Mars 2016 et disponible gratuitement dans Visual Studio, Xamarin est une technologie de développement mobile permettant de concevoir des applications natives pour différentes plateformes en n’utilisant qu’un seul langage de programmation.

Plus besoin de savoir coder en Java ou en Objectif C, le C# est le seul langage nécessaire ! Xamarin permet aussi, via l’api Xamarin Forms, de développer une application multiplateforme déployable sur Android, iOS et Windows Phone (si Windows 8.1 ou supérieur installé). Et c’est spécifiquement ce qui nous a intéressé à Infopolis.

Il nous sera possible d’écrire le code commun à toutes les plateformes (interface, algorithmes…) dans une bibliothèque, puis le code unique à chaque système d’exploitation dans leur propre bibliothèque créée automatiquement.

 

Une application peut être rapidement codée sous l’architecture MVVM (Model – View – ViewModel). Le principe est de séparer le code lié à l’interface dans des fichiers au format spécifique, et de découper le reste du code de manière logique (séparation de la gestion de base de données, algorithme...). Ici le XAML est un langage de description de page et gère le visuel de notre application. Les pages seront globalement les même sur iOS et Android, chaque objet de Xamarin ayant un équivalent natif sur chaque plateforme. 

Le reste de notre code est en C# et est lié à ces pages XAML. Nous pouvons alors dire à notre programme de gérer tel bouton de telle manière, de lancer un certain évènement lorsque ce même bouton est appuyé, et d’interagir avec le reste de notre application.

 

Mono, un logiciel intégré à Xamarin, va générer de son côté un code source pour chaque plateforme lors de la compilation. Un .apk ou un fichier iOS en partant du même code pourra alors être créé.

Il nous est maintenant possible de proposer à nos clients des applications multiplateformes et évolutives sans augmenter pour autant notre temps de développement.