Objectifs
- Approfondir les concepts avancés du langage JavaScript.
- Maîtriser les principes de la programmation orientée objet.
- Structurer une application à l'aide des prototypes et de l'héritage.
- Concevoir un code réutilisable et maintenable.
- Découvrir les principaux design patterns du développement JavaScript.
Compétences visées
- Concevoir des applications JavaScript selon les principes de la programmation orientée objet.
- Structurer et organiser un code complexe de manière maintenable.
- Mettre en œuvre les mécanismes avancés du langage (closures, callbacks, prototypes, héritage).
- Appliquer les principaux design patterns dans un projet JavaScript.
- Développer des applications front-end plus robustes et évolutives.
Pré-requis
Maîtriser les fondamentaux de JavaScript ou avoir suivi la formation Les fondamentaux de JavaScript.
Quel profil ?
Cette formation s'adresse aux développeurs Web, développeurs front-end et à toute personne souhaitant approfondir sa maîtrise de JavaScript et adopter des méthodes de développement plus avancées.
Formations associées
Au programme de la formation
JavaScript avancé : programmation orientée objet
Rappels sur JavaScript
- Le mot-clé
this - Les fonctions anonymes et les fonctions fléchées
- Les callbacks
- Les closures
Les nouveautés d'ECMAScript 6 (ES6+)
- Les déclarations
letetconst - Les fonctions fléchées (Arrow Functions)
- Les chaînes de caractères avec les Template Literals
- La déstructuration d'objets et de tableaux
- Les paramètres par défaut et l'opérateur Rest/Spread
- Les modules JavaScript (
import/export)
Introduction à la programmation orientée objet
- Comprendre les principes de la programmation orientée objet
- Les objets et leurs propriétés
- Les méthodes
- Encapsulation et réutilisation du code
Créer des objets en JavaScript
- Création avec le mot-clé
Object - Les objets littéraux (JSON)
- Les fonctions constructeurs
- Les prototypes
Les classes ES6
- Déclarer une classe avec le mot-clé
class - Créer un constructeur
- Définir des propriétés et des méthodes
- Créer des méthodes statiques
- Utiliser les accesseurs (
get/set) - Comprendre les différences entre classes ES6 et prototypes
L'héritage
- Héritage avec
extendsetsuper - Comprendre le fonctionnement de la chaîne de prototypes
- Les méthodes
call(),apply()etbind() - Réutiliser et spécialiser une classe
Concepts avancés de la programmation objet
- Organisation d'une architecture orientée objet
- Les classes abstraites (principe et implémentation)
- Les interfaces (concepts et bonnes pratiques)
- Composition et délégation
Introduction aux Design Patterns
- Comprendre le rôle des Design Patterns
- Le pattern Singleton
- Le pattern Factory
- Le modèle MVC
- Choisir un pattern adapté à son projet
Comment se déroule la formation ?
Chaque notion est abordée de manière concrète, puis appliquée à travers des exercices et des cas pratiques. Les groupes sont limités à 8 participants pour favoriser les échanges et permettre un accompagnement adapté à chacun.
Un support pédagogique est remis à l'issue de la formation pour retrouver facilement les notions abordées.
Comment les acquis sont-ils évalués ?
En fin de parcours, une évaluation permet de mesurer l'atteinte des objectifs pédagogiques. Selon la formation, elle peut prendre la forme d'un questionnaire, d'un exercice pratique ou d'une certification.
Le suivi est formalisé par une feuille d'émargement et une évaluation des compétences.

