Points forts
- Un trio de compétences indispensable à avoir dans son panel de compétences pour travailler en entreprise
- Les formations sont conçues de manière à ce que l'assimilation des concepts soit optimale, les élèves sont notamment amenés à réaliser de nombreux exercices.
Objectifs
- Installer et utiliser Docker
- Configurer une Registry
- Utiliser les fonctionnalités avancées de Docker
- Assurer la sécurité de sa plateforme Docker
Programme
Jour 1 : Docker (1/2) 7h avec 2h de théorie, 3h30 de pratique, 1h30 de pause
- Comprendre Docker
- Comprendre l’écosystème de Docker
- Installation de Docker
- Les bases de Docker
- Création et utilisation de conteneurs
- Cycle de vie d’un conteneur
- Inspecter un conteneur
- Exercices
- Création d’Images
- Utilisation du Dockerfile
- Les différentes instructions
- Exercices
- Utilisation de DockerHub
- Trouver et partager des images Docker
- Les imports et exports
- Exercices
- TP création d’image Docker
- Utilisation de Docker avec Node
- Création de DockerFile
- Exercices
- Devoirs : QCM et code à trou – 15 min
Jour 2 : Docker (2/2) 7h avec 1h30 de théorie, 3h de pratique, 1h30 de pause, 1h d’évaluation
Correction QCM et code à trou – 15 min
Persister des données
Utilisation des bind mounts
Utilisation des volumes
Exercices
Utilisation des réseaux Docker
Le réseau Bridge
Le réseau host
Exercices
Utilisation de multi services
Utilisation de Docker Compose
Exemple de multi-services
Exercices
Projet de fin de module
Réalisation d’un projet regroupant l’ensemble des fonctionnalités Docker vues précédemment.
Évaluation finale 1h
Jour 3 : Typescript (1/2) 2h de théorie, 3h30 de pratique, 1h30 de pause
Comprendre TypeScript
Comprendre l’utilité de TypeScript
Installation de TypeScript
Le typage
Les différents types
Inférence et assertions de types
Exercices
Les fonctions en TypeScript
Utilisation des fonctions avec typage
Paramètres optionnels
La surcharge de fonction
Exercices
Les Class en TypeScript
Utilisation des fonctions avec typage
L’encapsulation en TypeScript
Les class abstraites
les class statiques
Exercices
Les interfaces
Typage et utilisation d’interfaces
Création d’exemples d’interfaces
Exercices
Les Alias, unions et opérateurs
Exemple d’utilisations
Exercices
Devoirs : QCM et code à trou – 15 min
Jour 4 : Typescript (2/2) 1h30 de théorie, 3h de pratique, 1h30 de pause, 1h d’évaluation
Correction QCM et code à trou – 15 min
Les namespace
Comprendre et utiliser les namespace
Exercices
Les types génériques, natifs, mappés et conditionnels
Comprendre les différents types
Exemple d’utilisations
Exercices
Utilisation des décorateurs
Comprendre les décorateurs
Exemple d’utilisations
Exercices
Projet de fin de module
Réalisation d’un projet regroupant l’ensemble des fonctionnalités TypeScript vues précédemment
Evaluation finale 1h
Jour 5 : Tests Unitaires (1/2) 7h avec 2h de théorie, 3h30 de pratique, 1h30 de pause
Comprendre les tests unitaires
Comprendre l'utilité des tests unitaires
Les différents types de test TDD & BDD
Définition TDD
Définition BDD
Création des premiers tests
Installation du dossier test
Création de test simples
Installation de Jest
Utilisation de base de Jest
Démarrage d'un projet Jest
Utilisation des différentes fonctions
Les matchers
gestion des différents matchers (égalités, différences, contains, etc.)
exercices
Organisation
Comprendre les spécifications
Trouver des erreurs
Exercices
Espionner son code
Les différentes fonctionnalités espionnes
exercices
Devoirs : QCM et code à trou – 15 min
Jour 6 : Tests Unitaires (2/2) 7h avec 1h30 de théorie, 3h de pratique, 1h30 de pause, 1h d’évaluation
Correction QCM et code à trou – 15 min
Tester du code asynchrone
Comprendre comment tester du code asynchrone
Les différentes fonctions Jest
exercices
Effectuer des test reports
Comprendre les tests reports et corriger son code
Exercices
Projet de fin de module
Réalisation d’un projet avec des tests unitaires
Evaluation finale 1h
Avis
Pré-requis
- Connaissance avancée de Javascript et des bases de NodeJS
Public visé
- Développeurs ayant une connaissance avancée de Javascript et des bases de NodeJS