Site de Bertrand LIAUDET

React Native : Présentation du cours - 2020-2021

5 décembre 2021, par Bertrand LIAUDET




Suivi du cours



Demi-journée 1/8 : 24/02 - Présentation - Installation - Etape 1 :début

  • Etape 1 —> article
  • Cours -> p.26 : installation et premiers codes

  • Corrigés du jour -> ici

  • Exercices pour la prochaine fois :
  • Finir l’installation : node.js, git, vs code, yarn, watchman(mac), powerShell(windows), expo-cli, expo-go
  • Exercice HelloWorld page 22
  • Exercice pp. 23 à 26 : afficher la vue, sans style


  • Demi-journée 2/8 : 3/03 - Présentation - Installation - Etape 1 :fin - Etape 2 : début

  • Etapes 1 et 2 —> article
  • Cours -> On repart de la page 13 à partir de my-app-expo
  • Le corrigé précédent donne le code : il faut faire un nmp update pour charger le dossier node_modules (parfois nmp upadate —force)
  • Cours -> page 46 (avant le §petits tests)
  • Tests de l’étape 2 fait -> p. 37 : affichage d’un tweet

  • Corrigés du jour -> ici

  • Exercices pour la prochaine fois :
  • Revoir le cours jusqu’à la page 46 : ce qu’on a fait ce jour
  • Avancez la programmation de l’étape 2 jusqu’à la page 37 : ce qu’on a fait ce jour


  • Demi-journée 3/8 : 10/03 - Présentation - Installation - Etape 1 :reprise - Etape 2 : suite.


  • Corrigé du TP du cours jusqu’à Etape 2-5 -> ici
  • npm update pour fabriquer le dossier nodes_modules
  • expo start —web pour démarrer le projet sur le navigateur

  • Etapes 1 et 2 —> article
  • Cours -> Reprise de l’étape 2 à partir du TP livré de l’Etape 2-5
  • Cours-TP -> Suite du cours jusqu’à l’affichage stylé de tous les tweets en dur : pp. 45-50

  • Tableau du jour -> ici

  • Exercices pour la prochaine fois :
  • A partir de la version livrée la fois précédente, faites la suite : pp. 45-50 et ajoutez la boucle.
  • Vous devez me livrez votre package : attention à retirer le dossier node_modules mais aussi .expo/web/cache. Votre livraison ne doit pas dépasser 2MO.


  • Demi-journée 4/8 : 17/03 - Etape 2 : suite.

  • Etapes 1 et 2 —> article
  • Première partie du cours 4
  • Cours-TP -> Installation de livraisons légères.
  • Cours-TP -> Boucles et Map. Affichage des tweets avec une boucle. Analyse du code.
  • Deuxième partie du cours 4 :
  • Cours-TP -> Composant statefull -> p.68 : 1ère explication.

  • Corrigés du jour -> ici

  • Exercices pour la prochaine fois :
  • Coder une version avec la TweetBox, le nombre de caractères saisies qui s’affichent et la liste des tweets affichés avec un boucle
  • Pour ça, partez du cours : chapitre entre 6 et 7 (p.53) : parenthèse : livraison légère.
  • Dans ce chapitre, utiliser la version à 4 tweets comme base de travail
  • De là, mettez une boucle d’affichage des tweets (chapitre 7).
  • Mettez le composant TweetBox pour la saisie d’un tweet : (chapitre 8).
  • Gérez les states pour afficher le nombre de caractères saisis (chapitre 8)
  • Vous devez me livrer votre package : attention à retirer au moins le dossier node_modules mais aussi .expo/web/cache. Votre livraison ne doit pas dépasser 2MO. Vous pouvez aussi ne m’envoyer que dossiers et fichiers sources.


  • Demi-journée 5/8 : 24/03 - Etape 2 : presque la fin.

  • Etapes 1 et 2 —> article
  • Chapitres 8 et 9 : composant statefull et setState
  • Chapitres 10 : petit outillage : date-fnd et nano-id

  • Exercices pour la prochaine fois :
  • Coder l’application jusqu’au chapitre 9 compris : l’ajout d’un tweet
  • Vous pouvez partir de ce qui a été livré en corrigé en journée 4
  • Faire ce qui était demandé pour la journée 5 (chapitres 6, 7 et 8 du cours)
  • Ajouter ce qui est demandé au chapitre 9 : enregistrer le tweet.
  • Vous devez me livrer votre package : attention à retirer au moins le dossier node_modules mais aussi .expo/web/cache. Votre livraison ne doit pas dépasser 2MO. Vous pouvez aussi ne m’envoyer que dossiers et fichiers sources.
  • Vous pouvez ne pas tout faire (pour cette fois) mais commencez à avancer le rendu !


  • Demi-journée 6/8 : 31/03 - Etape 2 : fin et bilan. Etape 3

  • Etapes 1, 2 et 3 —> article
  • Chapitre 10 de l’étape 2 et bilan
  • Etape 3 : gérer plusieurs écrans.

  • Exercices pour la prochaine fois :
  • Coder l’application jusqu’au chapitre 11 compris
  • Coder en plus la possibilité de revenir à la page des tweets à partir d’un bouton dans la page de test
  • Vous devez me livrer votre package : attention à retirer au moins le dossier node_modules mais aussi .expo/web/cache. Votre livraison ne doit pas dépasser 2MO. Vous pouvez aussi ne m’envoyer que dossiers et fichiers sources.
  • Vous pouvez ne pas tout faire (pour cette fois) mais commencez à avancer le rendu !


  • Demi-journée 7/8 : 7/04 - Etapes 3 et 4

  • Corrigés de l’étape 3 -> ici

  • Etapes 3 et 4 —> article
  • Reprise de l’étape 3 : gérer plusieurs écrans et des icônes.
  • Présentation de l’étape 4.

  • Exercices pour la prochaine fois :
  • A partir du corrigé de l’étape 3, coder l’étape 4
  • Ajoutez une fonctionnalité dans la page de tests : permettre d’effacer les nouveaux tweets enregistrés sur le téléphone (ou tout effacer, mais attention au map dans ce cas !)
  • Vous devez me livrer votre package : attention à retirer au moins le dossier node_modules mais aussi .expo/web/cache. Votre livraison ne doit pas dépasser 2MO. Vous pouvez aussi ne m’envoyer que dossiers et fichiers sources.


  • Demi-journée 8/8 : 14/04 - Dernière étape, reprise de l’étape 4 et synthèse

  • Dernière étape et étape 4 —> article
  • Dernière étape
  • La documentation, les composants, les APIs
  • API Alert()
  • Livraison sur expo pour iOS et Android : appli pour téléphone
  • Reprise de l’étape 4
  • Nouvelles fonctionnalités dans la page test :
  • Revenir aux 4 tweets de départ (vider le téléphone)
  • Revenir à 0 tweet

  • Corrigé de l’étape 4 -> ici


  • Consignes d’évaluation :

  • Il faut pouvoir coder une petite application React Native
  • Il faut maitriser l’architecture d’une application
  • Il faut maitriser les bases React : composant, props, state
  • Pour l’évaluation, on ne traite pas l’étape 4 (async, await, etc.