Le programme

Formation initiale

Chapitre 1 : Introduction
Fonctionnement (aperçu)
Introduction à Angular (aperçu)
Qu'est ce qu'une single page application ? (aperçu)
- Créer un projet Angular
- Editer notre projet
- Comprendre la structure
- TypeScript
Chapitre 2 : Les composants, les templates et le data binding
- Comprendre les composants
- Démarrage d'une application Angular
- Comprendre AppModule
- Les templates et les styles
- Premier bilan
- Créer un nouveau composant
- Angular CLI
- Encapsulation des vues et des styles
- Aperçu du data binding
- String interpolation
- La liaison de propriétés
- Double data binding
- Les directives
- *ngIf
- ngStyle
- ngClass
- ngFor
Chapitre 3 : Début de notre première application !
- Planification
- Mise en place du projet
- Header
- Modèle
- La liste de cocktails
- Détails d'un cocktail
Chapitre 4 : Approfondissement des composants
- Communication entre les composants
- Propriété input
- Propriété output
- L'encapsulation
- Variable locale
- ViewChild
- Directive ng-content
- ContentChild
- ContentChild
Chapitre 5 : Projet : utilisation des propriétés input/output
- Objectifs
- Utilisation d'un container
- Utilisation d'une propriété input
- Utilisation d'une propriété output
Chapitre 6 : Approfondissement des directives
- Objectifs
- Directive d'attribut
- Hostlistener
- Hostbinding
- Liaison de propriétés et directive
- Directive structurelle
Chapitre 7 : Les services et l'injection de dépendances
- Objectifs
- L'injection de dépendances
- Providers et hiérarchie des injecteurs
- Utilisation d'un service dans un autre service
Chapitre 8 : Les Observables
- Introduction aux Observables
- Création d'un Observable
- Introduction aux Subjects
- Utilisation des Subjects
Chapitre 9 : Projet : utilisation directive et service
- Objectif du chapitre
- Ajout et modification de modèles
- Ajout d'une directive
- Ajout d'un service
Chapitre 10 : Le routing
- Introduction au routing
- La directive RouterLink
- La directive RouterLinkActive
- Les services ActivatedRouter et Router
- Params
- QueryParams et Fragment
- Routes imbriquées
- Redirection et Wildcard
- Séparer les fichiers de routing
- Les gardes canActivate
- Le garde canDeactivate
- La garde resolver
Chapitre 11 : Projet : routing
- Objectifs
- Affichage des ingrédients
- Création des composants pour le panier
- Création des routes
- Développement du panier
- Créer des sous routes
- Editer nos cocktails
Chapitre 12 : Les formulaires
- Introduction
- Les templates réactifs
- Les contrôles
- L'état du formulaire
- Les messages d'erreur
- Les valeurs par défaut
- Les boutons radios
- Setter et patcher les valeurs
- Reset le form
Chapitre 13 : Les pipes
- Introduction aux pipes
- Utiliser les pipes
- Paramétrer un pipe
- Chaîner les pipes
- Créer des pipes personnalisés
- Les pipes natifs
Chapitre 14 : Faire des requête http
- Introduction au module http
- Définir les Headers
- Les requêtes GET
- Les requêtes POST
- Utiliser les données reçues
- Catcher les erreurs
- Utiliser le pipe async
Chapitre 15 : Projet : formulaires et http
- Introduction
- Ajout d'un formulaire
- Contrôles et erreurs
- Utiliser http avec un service
- Utiliser ces données dans notre formulaire
Chapitre 16 : utilisation de plusieurs modules
- Utiliser plusieurs modules
- Les modules de feature
- Les modules partagés
- Le lazy loading des modules
Chapitre 17 : Projet : pipes et modules
- Utiliser un pipe async
- Utiliser d'autres pipes
- Créer un module partagé
- Utiliser le lazy loading
Chapitre 18 : Les animations
- Introduction
- Déclencheurs et state
- Les transitions
- Les transitions avancées
- Les phases de transitions
- Grouper les transitions
Chapitre 19 : Tester son application
- Introduction
- Configuration des tests
- Lancer des tests
- Tester des composants
- Tester des services
- Les tests isolés/non isolés

Thèmes avancés

Chapitre 20 : Flex-layout
- Introduction
- FlexBox
- Static API
- Responsive API
- Features avancées
Chapitre 21 : ES6
- Introduction
- Les variables et leur portée
- Template literals
- Affectation par décomposition
- Opérateurs Rest & Spread
- Fonctions fléchées
- Les promesses
- Les classes
- Les modules
- Map et set
Chapitre 22 : Déploiement avec la MEAN stack
- Présentation de la MEAN stack
- Utilisation de node et d'express
- Installation de mongoDB et mongoose
- Installation d'Angular
- Utilisation d'AWS
- Mise en production de l'application
Chapitre 23 : Material partie 1
- Présentation et installation de Material
- Input, Checkbox, Radio et SlideToggle
- FormsField
- Select, Slider et DatePicker
- Autocomplete
- Bouton, menu et sidenav
- Toolbar, list et grid
Chapitre 24 : Material partie 2
- Card, stepper, tabs
- Expension panel, bouton toggle et chips
- Icon, progressSpinner et Bar
- Dialog, tooltip et Snackbar
- Les tableaux
- La pagination
- Trier et filtrer un tableau
Chapitre 25 : Authentification avec JWT
- Objectifs
- Préparation de l'application
- Topbar et routing
- signin/signup
- Service d'authentification et méthode de signup
- Méthode de signin dans notre service d'Authentification
- Création des routes Express
- Création du token avec Express
- Déconnexion de l'utilisateur
- Création de la page de profil
- Détails du profil
- Création de l'intercepteur et du middleware backend
- Gestion de l'expiration du token
Chapitre 26 : Les opérateurs de RxJs
- Introduction à RxJs
- Les opérateurs de création
- Les opérateurs pipeables, de transformation et utilitaires
- Création d'une fonctions de génération de flux
- Les opérateurs de combinaison
- Les opérateurs de filtre
Chapitre 27 : NGRX - Partie 1
- L'état d'une application
- Redux et ngrx
- Présentation de l'application To-do list
- Store et reducer
- Les actions
- Reducers et Select
- L'outil de développement store-devtool
Chapitre 28 : NGRX - Partie 2
- Les Effects
- Le router-store
- Les selectors
- Entities
- forFeature
- MetaReducers
Chapitre 29 : NGRX - Projet
- Introduction
- Refactorisation
- Store et premier reducer
- Actions pour l'authentification
- Signup
- Signin
- Logout
- Initialisation du token
- Le profil
- Module photos
- Topbar et actions pour les photos
- Effects pour notre module photos
- Connexion à l'API