Contenu connexe Similaire à Offre migrer vers_flutter (20) Offre migrer vers_flutter2. Apparu avec la commercialisation du premier iPhone, le
développement d’applications sur mobile et plus globalement sur
supports tactiles est devenu aujourd’hui un vecteur incontournable du
développement des entreprises.
Qu’il s’agisse d’applications à destination des clients ou des salariés de
l’entreprise, ces outils font partie intégrante des programmes de
transformation digitale.
En 2008, le groupe Ineat, via son agence Phoceis, a été un des tous
premiers acteurs au Nord de Paris à proposer du développement
mobile. Nous avons notamment a été à l’origine d’une des toutes
premières apps mobiles de m-commerce de l’App Store.
Depuis lors, nous avons développé plus de 100 applications mobiles, de
tout type et pour tout secteur d’activité.
Nous suivons d’un œil particulièrement attentif un secteur aux
évolutions incessantes, rythmées par les annonces des deux principaux
acteurs (WWDC d’Apple, Google IO), prodiguant à nos clients à la fois
des capacités de développement et de conseils.
Le développement
mobile & le Groupe Ineat
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
3. Panorama du développement mobile
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
S’il n’était possible, à l’origine, de ne développer que sur les outils officiels
fournis par Apple et Google (développement natif), les temps ont
considérablement changé.
Sont apparus dès le début des années 2010 les premiers outils hybrides à
la promesse simple : ne plus avoir à développer « deux fois », une fois pour
chaque plateforme : un code permet d’obtenir une application pour iOS
et Android en un clic.
Avec deux grandes philosophies : l’hybride web (qui est en fait la simple
encapsulation d’un site web dans une app mobile) et l’hybride natif (qui
permet d’obtenir de véritables applications mobiles compilées pour
chaque plateforme).
Enfin, il y a quelques années est apparue une nouvelle alternative, les
Progressive Web App (ou PWAs) qui se situent à mi-chemin entre une
app mobile classique et un site web mobile.
Native App
Hybride Natif
Hybride Web
PWAs
4. En un coup d’œil
Développement natif
#objectiveC #swift #java #kotlin
Il s’agit de l’approche « historique » qui consiste à développer une
app deux fois, une fois pour chaque plateforme.
Les avantages de cette approche sont multiples (performances,
accès direct au hardware, expérience utilisateur optimisée, …) mais
elle présente un inconvénient et de taille, son coût. Que ce soit en
termes de build ou de run (développement et maintenance
quasiment doublés)
Natif hybride
#Xamarin #ReactNative
Il s’agit en quelque sorte du Graal du développement mobile. Un
outil performant qui permet de développer deux apps avec un seul
code.
Une approche qui ne présente, en apparence, quasiment que des
avantages puisqu’on se retrouve avec deux apps natives.
Toutefois, peu de frameworks ont fait l’unanimité. Le plus
performant a été React Native (utilisé notamment pour l’app
Facebook), mais il est aujourd’hui vieillissant.
Beaucoup d’autres n’ont dans les faits jamais réussi à vraiment
percer (Xamarin par exemple) pour diverses raisons (faibles
performances / fiabilité, manque d’adhésion des développeurs, …)
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
5. En un coup d’œil
PWA
#web #javascript
Les PWA (pour Progressive Web Apps) se veulent, pour ses
défenseurs, les remplaçantes des apps mobiles.
Si la promesse est un peu trop belle (support incomplet sur iOS,
notamment sur les notifications, et impossibilité de les publier sur
le store d’Apple), les PWAs ont des atouts indéniables.
Elles offrent notamment une expérience utilisateur proche de celle
des apps mobiles, notamment grâce à leur capacité à mettre en
cache du contenu, assets graphiques compris, et constituent pour le
coup sous Android une alternative quasi-complète aux
applications mobiles.
Hybride
#Cordova #Ionic
S’il s’agit de l’approche la moins couteuse sur le papier et la plus
simple à mettre en place (théoriquement tout développeur web
« classique » peut de ce fait développer une app), elle est également
généralement considérée comme l’approche la moins qualitative.
Les raisons en sont principalement la dégradation de l’expérience
utilisateur et les faibles performances de cette approche. Ainsi que
l’impossibilité d’accéder directement à certaines parties du
hardware.
De plus, pour les apps destinées au grand public, le process de
validation sur l’App Store peut s’avérer très hasardeux, les équipes
d’Apple se montrant parfois assez soucieuses de la qualité de
l’expérience utilisateur.
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
6. Flutter prend le meilleur de ces mondes
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
Flutter se situe au confluent des apps natives, hybrides et des PWAs :
• Flutter est un framework permettant de réaliser des applications
natives iOS et Android
• Il est possible de réaliser des applications ayant un « look and feel »
strictement identique à celui de la plateforme souhaitée, en termes d’UI
et d’animations notamment
Cerise sur le gâteau, Flutter offre des opportunités au-delà des apps mobiles.
A partir d’un même code Flutter, vous pouvez créer une application
MacOS, Fushia, Linux, mais aussi et surtout … un site web.
Si cette dernière fonctionnalité est encore en beta, il est donc possible à
partir d’un code Flutter d’app mobile de créer son équivalent :
• Sous la forme d’un site web
• Sous la forme d’une PWA.
Un avantage dont aucun autre framework ne peut se targuer à ce jour.
7. Les autres atouts de Flutter
• Flutter est une technologie supportée par Google, avec une roadmap claire
et partagée.
• Une très forte communauté s’est créée autour de cette technologie.
• La technologie est désormais mainstream : plus de 15.000 apps Flutter sont
présentes sur les marketplaces d’apps.
• Flutter s’intègre aux outils utilisés par les développeurs quotidiennement,
et offre une stabilité d’environnement sans comparaison, notamment
avec Xamarin.
• Flutter regarde vers demain, avec la possibilité de cibler des platesformes
naissantes comme Fluschia (l’OS de Google).
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
Popularité :
Flutter a désormais plus
d’étoiles que React Native sur
github.
Cette note, décernée par les
développeurs, illustre la
popularité montante de
Flutter dans la communauté
8. Pourquoi migrer votre app sur Flutter ?
Dans un univers digital où les apps et leur maintenance sont un poste de charges souvent important, la raison n°1
est bien entendu le coût.
Les gains que nous constatons généralement sur les charges, en comparaison du développement natif, sont de
l’ordre de
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
25%
Gain moyen
constaté sur la
phase de Build
35%
Gain moyen
constaté sur la
phase de Run
9. Des grands noms
l’ont adopté
Flutter a déjà été choisi par des nombreux éditeurs de
premier plan.
Nous vous invitons notamment à regarde la vidéo ci-après,
qui explique le process de décision de NuBank quant au
choix de Flutter.
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
10. Migrer vers ?
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
Migrer vers Flutter peut s’effectuer progressivement : il n’est pas
nécessaire de réaliser un « big bang » sur votre app mobile en la
réécrivant complètement
En effet, il est possible d’intégrer Flutter dans une application
existante, pas à pas, avec la fonctionnalité « Add to an existing App »
Cela permet ainsi de tester Flutter, de prendre le temps de faire
monter ses équipes en compétence, et au final de faire migrer son
app en douceur.
11. Nous vous accompagnons
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
Ineat c’est aussi un centre de formation avec deux approches :
• une formation Flutter académique
• ou une formation Flutter contextualisée, personnalisée
sur votre projet, dans votre système d'information.
La montée en compétence du langage Dart est relativement
aisée et aujourd’hui l’écosystème Flutter est riche de tous les
outils nécessaires à un développement optimisé :
• IDE
• Chaîne d’intégration continue
• Déploiements automatisés (A/B testing, beta)
• Suivi de l’application (analytics, configuration dynamique)
12. Vous êtes sceptique ?
Ineat : présentation de l’entreprise © 2019. Tous droits réservés.
Laissez nous vous convaincre !
Nous vous proposons
Ø Une session de live coding chez vous,
Ø Pour réaliser une application « Twitter Like »,
Ø Réalisée en deux ou trois heures que vous pourrez approfondir sur une
session de formation plus longue.
Animée par notre expert Mehdi Slimani
(membre de la communauté Flutter
France et initiateur de Flutter Lille), cette
session a déjà été délivrée à la
conférence Confoo au Canada, au
Microsoft Innovation Center de
Belgique...
13. EXPERIENCES SIGNIFICATIVES
EXPERTISES ET COMPÉTENCES
10 ANNÉES D’EXPÉRIENCES
Mehdi Slimani
Expert technique
mslimani@ineat.fr
Certifications
Licence professionnel T2I
(Valenciennes)
Langues
Anglais
#cloud#web
#mobile#flutter
Adeo services
Développement d’une application Flutter à
destination des artisans (TODOMO).
Ministère de l’intérieur
Développement d’une application mobile de PV
électronique sur un OS Android sécurisé
INEAT
Expert technique : membre de la direction
technique (Ineat Lab ) spécialisé dans le
développement embarqué mobile, IOT.
Certifié Associate Android Developer
Leroy Merlin France
Développement back et mobile des applications à
destination des collaborateurs en magasin ( ~15
applications )
Industrialisation des projets
Développement de deux frameworks mobile Core &
Design
Développement d'un outil OSS de testing mobile
pandalab
Leroy Merlin France / BI
Traitement et agrégations de flux de données supply
( GCP, Google DataFlow, Apache Beam, Apache
Kafka).
• Mobile : Android, iOS, Flutter
• Programmation réactive : RxJava, RxKotlin,
RxSwift, Spring Webflux
• Plateformes cloud: GCP, AWS, Firebase
• IA : Google Vision, AWS Rekognizer
• Conception technique
• Développement Web : VueJS, Angular, Electron
• Infrastructure : GKE, Kubernetes
• Langages de programmation : Java, Kotlin,
JavaScript, TypeScript, Go, Dart, Ruby, Groovy
• CI/CD : Jenkins, Circle CI, BitRise, CodeMagic
#android
Flutter Lille
Organisateur du meetup Flutter Lille
Communauté mobile INEAT
Leader d’une communauté de 20 développeurs
mobile au sein d’INEAT
Notre lead-developer Flutter
• Co-fondateur de Flutter Lille
• Membre de Flutter France
• Speaker & animateur de meetups