PLB CONSULTANT : 4.4. Solutions Open Source - Mobilité
Organisme
92300 LEVALLOIS PERRETVoir toutes ses formationsAutres organismes proposant cette formation
Durée
28 heuresModalités
Formation
- Classe virtuelle
- Présentiel
Évaluation
Travaux pratiques. Auto-évaluation en début et en fin de formation.
Prix
Public
Pour consulter les public visés, merci de vous référer au programme détaillé de chaque stage.
Pré-requis
Pour consulter les pré-requis, merci de vous référer au programme détaillé de chaque stage.
Objectifs pédagogiques
Pour consulter les objectifs pédagogiques, merci de vous référer au programme détaillé de chaque stage.
Programme détaillé
Objectifs pédagogiques :
À la sortie des frameworks de développement d’applications mobiles multiplateformes (PhoneGap principalement), beaucoup d’entreprises, dont Facebook et LinkedIn, ont sauté sur l’occasion de mutualiser les développements entre Android et Apple afin de gagner en maintenabilité et en coût.Une fois les applications développées et publiées sur les stores, l’engouement du public ne fut pas au rendez-vous : les performances étaient mauvaises et le rendu pas à la hauteur des applications natives si bien que ces entreprises ont fait complètement machine arrière.Pour garder les avantages du développement multiplateformes sans avoir les défauts liés au framework Cordova, Facebook a créé en 2015 sur la base du framework JavaScript React, un framework destiné au développement d’applications mobiles natives. Sa particularité : permettre le développement d’applications multiplateformes utilisant des composants natifs à partir de JavaScript. On a donc les avantages du développement multiplateformes avec les avantages du développement natif.C’est pourquoi sa popularité n’a cessé de croître aujourd’hui et que beaucoup d’entreprises ont placé cette technologie au centre de leur développement, parmi lesquelles Facebook, Airbnb, Amazon Video, Netflix, New York Times, Instagram, Yahoo, Dropbox.
Lors de la formation, vous découvrirez les principes clés de React Native et apprendrez à réaliser des applications mobiles performantes, stables et compatibles avec iOS et Android.
Ce module de trois jours commencera par une présentation générale des frameworks de développement multiplateforme mobile afin de bien comprendre la spécificité de React Native. Puis nous verrons les dernières nouveautés de JavaScript : ES2015 car elles sont au cœur de React Native et plus. Ensuite, nous verrons les bases du framework de développement React et notamment l’approche composant qui permet de développer des applications maintenables et fluides pour vos utilisateurs. Les principes de React sont les mêmes que ceux de React Native, ainsi vous apprendrez les bases d’un framework que vous pourrez aussi utiliser pour vos applications web et même de bureau. Nous créerons notre premier écran de notre application mobile smartphone en React Native. Nous verrons ensuite les différents éléments de base à intégrer dans toute application (gestion des formulaires, récupération de données via appel d’APIs par exemple) puis nous utiliserons les API de React Native permettant de faire appel aux fonctions du téléphone (géolocalisation, notifications push par exemple). Enfin, il sera temps de savoir comment déployer notre application sur les stores.
À l’issue de la formation, les participants sauront :
- Mettre en place un environnement de développement React Native
- Concevoir l’architecture logicielle d’une application mobile multiplateforme
- Construire une interface utilisateur fluide et performante
- Utiliser les principaux composants et les API natives proposées par React Native
Public :
Il est destiné aux développeurs ayant des bases de JavaScript désirant développer sur mobile. À l’issue de la formation, les stagiaires sauront développer une application React Native en utilisant les meilleurs composants Open Source disponibles et les publier sur les stores.
Pré-requis :
Connaissance impérative du langage JavaScript.
Introduction à React Native
Présentation de l’histoire de React Native et utilisation aujourd’hui
Comparaison aux autres outils crossplatform
Architecture et principes clefs de React Native
ES6/ES201X : les bases
Babel
ES6 ( let et cont, Fat Arrow functions, Destructuring, imports et exports, Classes, Dynamic Object Keys, Array spread )
ES7 et au-delà ( object spread, async await, static class properties, bound instance methods )
npm et yarn : installer des packages
Cas pratique :
Utilisation de nouvelles fonctionnalités ES6/ES201X
React Native / React les bases
React & JSX
Création de son premier composant
Configurer un composant : state & props
Utilisation de setState
Les méthodes lifecycle d’un composant
Cas pratique :
Création de son premier composant React
Les composants de base de React Native
Présentation de l’API de base de React Native ( View, Text, Image, ScrollView, StyleSheet )
Cas pratique :
Mise en place d’un projet avec Create React Native App et création de ses premiers composants React Native
Navigation
Présentation et comparaison des différentes librairies existantes
Ajouter des animations et des transitions entre des écrans de son application
Cas pratique :
Ajout de react-navigation dans notre projet et intégration d’un deuxième écran
Construction de son application
Intégrer à son application des composants existants
Utiliser le composant List
Présentation d’une organisation possible des répertoires d’un projet
Cas pratique :
Créer les deux premiers écrans de base de notre application “Airbnb”
Gestion des formulaires
Les principaux composants de formulaires
La validation et gestion des erreurs
Cas pratique :
Ajouter un formulaire profil sur notre application
Récupérer des données distantes
Présentation de l’approche Smart/Dumb components
Utilisation de Fetch pour récupérer des données d’une API REST
Présentation de Redux pour améliorer la gestion des données
Présentation de GraphQL : le futur des APIs REST et pourquoi il est très adapté dans un environnement mobile
Cas pratique :
Intégration des données d’une API. Mise en place d’un chat dans notre application
Les APIs natives
Les principales APIs natives de React Native ( AsyncStorage, Geolocalisation, notifications push, Caméra, etc… )
Développer un module natif ( pour Android et IOs )
Cas pratique :
Intégration de l’authentification. Ajout d’une photo sur le profil. Intégration d’une carte avec les logements
Publication sur les stores
Publier une application React Native sur les stores
Usages avancés
Tests unitaires et fonctionnels : quels sont les bons outils à utiliser
Comment créer des applications qui peuvent être utilisées en mode offline
Présentation de CodePush pour les mises à jour Over the Air et du Microsoft AppCenter
Authentification Facebook avec Oauth
Internationaliser une application