10. Code-sharing !
Une seule base de code entre iOS et
Android !
Et pourquoi pas partagée avec un site web
?
11. Code-sharing !
Une seule base de code entre iOS et
Android !
Et pourquoi pas partagée avec un site web
?
Et pourquoi pas avec… un serveur d’API ?
12. Code-sharing !
Une seule base de code entre iOS et
Android !
Et pourquoi pas partagée avec un site web
?
Et pourquoi pas avec… un serveur d’API ?
Le Saint-Graal des développeurs :
WORA (Write Once Run Anywhere)
Sun Microsystem
13. Coder-sharingTM !
Codeur frontend réutilisable en mobile et en
back !
Le Saint-Graal des RH et managers :
HODA (Hire Once Dev Anywhere)
Moi
16. Progressive Web App
« Juste » une web app + API + guidelines
• Possibilité d’être installée sur l’écran d’accueil
• Les PWA peuvent permettre à certaines parties des sites et certaines
fonctionnalités d’être disponibles en mode offline.
• Possibilité d’utiliser le push de notification pour augmenter l’engagement des
utilisateurs.
• Pas une app, donc hors sujet…
• Pas d’accès au système…
• Pas de publication dans les stores…
16
17. App hybride
Navigateur wrappé dans une application
native
• Accès aux APIs système via des « ponts ».
• Facilité de développement.
• Publication dans les stores possible.
• Impossibilité d’utiliser des composants UI natifs (pas d’AR,
de filtres…), limitée par les capacités du browser
• UI / UX identique entre les OS sauf à développer les
composants en double…
• Performances…
17
19. App native cross-platform
Runtime JS (JavaScriptCore / V8) embarqué dans une
application native
• Accès full aux APIs système
• UI / UX reposant sur des composants natifs
• Performances proches du full natif
• Live reload en développement
• Remote debugging possible
• Courbe d’apprentissage pour le développement
des vues
19
29. FONCTIONNALITÉS NATIVES
Photos, contacts, géolocalisation…
LANCEMENT OFFLINE
Démarrage hors connexion
SÉCURITÉ
Code source, chiffrement
DONNÉES OFFLINE
Résistance aux pertes de connexion
en cours d’utilisation
Moins bonnes
performances
Stockage limité :
- LocalStorage : 5Mo
- IndexedDB :
pourcentage espace
restant
Oui, après un 1er
lancement connecté
OK sur Android,
pas sur iOS
+
+
Stockage limité :
- LocalStorage : 5Mo
- IndexedDB :
pourcentage espace
restant
Bonnes performances
générales
Non--
-
+
+
- -
- -
+ -
+ +
+ ++
Push web, support limitéNOTIFICATIONS PUSH
ACCESSIBILITÉ
Pour mal-voyants
COMPATIBILITÉ
OS, navigateurs…
Code source directement
lisible.
Données lisibles en local.
Code source directement
lisible.
Données lisibles en local.
De plus en plus de
fonctions supportées
(push, géolocalisation,
photos, synthèse
vocale…)
De plus en plus de
fonctions supportées
(géolocalisation, photos,
synthèse vocale…)
Accessibilité plus limitée.
Pas de zoom possible
Accessibilité plus limitée.
Pas de zoom possible
Web et Web MobileAndroid + Web (limité)
PWA WEB
Bonnes performances
générales
BDD locale. Pas de limites
de stockage.
Oui, par définition
OK
++
++ BDD locale. Pas de limites
de stockage.
Performances maximales
Oui, idem natif : tout est
embarqué dans
l’application
++
+
++
++
++ +
++ ++
++ +
++ +
- ++
Dépend du fournisseur de
push (si plugin disponible)
Code source mieux
protégé.
Possibilité stockage
sécurisé des données.
Code source moins
protégé.
Possibilité stockage
sécurisé des données.
Oui, par définition
Oui selon les plugins
(couvrent la plupart des
besoins)
Voiceover (iOS), TalkBack
(Android), zoom…
Accessibilité plus limitée.
Pas de zoom possible
iOS, Android, Windows +
Web
iOS et Android
uniquement
NATIF HYBRIDE
++ ++
BUDGET
Mutualisation de code,
maintenabilité…
Tout le code source web
est mutualisé entre
chaque plateforme
Tout le code source web
est mutualisé entre
chaque plateforme
++
Chaque plateforme
nécessite des
développements et
compétences
spécifiques…
Tout le code source web
est mutualisé entre
chaque plateforme
-
PERFORMANCES
Scrolling, transition
33. Our feeling (web dev team)
• Simple concepts but hard reality for developers
• Continuous integration is as simple as native
• Immature Framework
• Clear 2018 roadmap missing
• Risk of breaking changes between versions
• Helpful community
• Sensitize the UX designer to avoid specific developments per device
• Faster developments than pure native
• Easier tests campaigns than hybride (no webviews)
34.
35. 35
Pourquoi ?
• Code & Coder sharing !
• Compagnons !
Sidekick, Playground, Chrome DevTools
• Build dans le cloud !
• Le challenge !
Commençons par le commencement (des problèmes) : 2007 arrivée de l’iPhone… les premières apps tierses arrivent en 2008 (il y a 10 ans)… grâce à la mise en place du concept de store d’applications.
Dans la foulée est arrivé Android et son store.
Plus simple à maintenir
Moins de code, moins de bug
Un seul environnement de dev
Un seul projet
Etc…
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Runtime natif
-> accès à toutes les ressources systèmes, y compris virtualisation & recyclage des composants.
-> accès à toutes les possibilités systèmes, ré-utilisations de composants natifs déjà développés
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Les Progressive Web Apps sont des applications fonctionnant dans les navigateurs standards mais utilisant des fonctionnalités additionnelles.
Arbre de décision ?
Matrice de comparaison ?
Détailler chaque question :
EXPERT EN ASSURANCE EMPRUNTEUR ET PRODUITS DE PRÉVOYANCE