Je voulais profiter de cet article pour faire un rapide retour d'expérience sur une conférence que j'ai donné dans le cadre de mon travail, avec mon collègue Florian Rousselet. Cette conférence a eu lieu à l'école d'ingénieur Polytech Tours devant un parterre d'une quarantaine d'étudiants en informatique. Pour rendre la conférence plus interactive, nous avons utilisés l'outil Klaxoon (https://klaxoon.com/fr/) qui permet, à partir d'un site web/smartphone, d'envoyer en direct des messages, de répondre à des votes ou encore de participer à des séances de brainstorming.

Au programme, toute une série de réjouissance à propos du développement mobile :

  • Présentation du contexte de la mobilité (essentiellement des chiffres pour démontrer l'omniprésence du mobile et sa progression à 2 chiffres au fur et à mesure des années)
  • Les problématiques associées
    • Connectivité, interactions avec l'utilisateur, réalité augmentée/virtuelle, wearable devices…
    • Systèmes différents, multitudes de tailles d'écran et de performance
    • Sécurité et optimisation des performances
  • Comparatif des principales solutions du marché :
    • Natif
    • PWA (Progressive Web Apps)
    • Xamarin
    • Apache Cordova (+ Ionic)
    • Les autres : React Native, Appcelerator Titanium, Sensha Touch…

Pour résumer, voilà le bilan que l'on peut tirer des différentes technologies présentées :

Avantages Inconvénients
Natif Très bonne expérience utilisateurRéférencement et visibilité optimale (via les stores)Accès à 100% des fonctionnalitésPerformances optimales (jeux, AR/VR) 3 OS/3 langages/3 process = coûts élevés + temps important
PWA Pas de téléchargementPoids légerPas de validation des storesMise à jour transparente et en continue Accès aux fonctionnalités des périphériques encore incomplèteSupport d’iOS (c’est en cours avec la dernière version de WebKit)
Xamarin Solution multiplateformesMutualisation du codeRéutilisation des compétences .NET/C# des équipes Accès aux fonctionnalités des périphériques encore incomplèteSupport d’iOS (c’est en cours avec la dernière version de WebKit)
Apache Cordova Solution multiplateformesMutualisation du codeCommunauté importante et dynamiqueRéutilisation des compétences des équipes web (HTML5/CSS3/JS)Compatible avec Visual Studio 🙂 Dépendance à la plateforme XamarinProcessus de build iOS « un peu contraignant » 🙂
React Native Excellente performanceEn évolution constante (poussé par FaceBook) Encore jeune et incomplet

C'est toujours très agréable de partager ses connaissances avec d'autres personnes, et c'est aussi le moment de valider notre façon de les transmettre de la manière la plus efficace possible. Je ne manquera pas de vous tenir au courant dès que j'aurais de nouveau l'occasion de réaliser cet exercice.