loader image

Gate Training

logo-png
Développement mobile

React Native

1 Mois

Formation React Native

Objectifs de la formation React Native

  • À la sortie des Framework de développement d’applications mobiles multiplateformes (Phonegap principalement), beaucoup d’entreprises, dont Facebook et LinkedIn, ont saisi 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 defauts 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é de permettre le développement d’applications multi-plateformes 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 croitre 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 quatre jours commencera par une présentation générale des Frameworks de développement multiplateformes 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 ensuite 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.

A 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 multiplateformes
  • Construire une interface utilisateur fluide et performante
  • Utiliser les principaux composants et les API natives proposées par React Native.

À qui s’adresse cette formation ?

Public :

l 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.

Contenu du cours React Native

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

Travaux Pratiques

Ce cours alterne pratique et théorie pour une meilleure assimilation des connaissances.

Réf:

0020

Tarif:

600 Dt

Niveau:

Avancé

Classe à distance:

Possible

Pas de sessions disponibles