
À propos de cette formation
Cette formation aborde les concepts avancés de JavaScript ES5 pour construire de véritables applications web. Les participants consolident leur maîtrise de la POO, exploitent jQuery, s'initient à ES6, maîtrisent les outils de débogage, gèrent les échanges de données et découvrent les API HTML5 ainsi que JavaScript côté serveur avec Node.js.
Objectifs de la formation
- Maîtriser les concepts avancés de JavaScript ES5
- Appliquer les principes de la POO en JavaScript
- Utiliser efficacement les outils de débogage navigateur
- Exploiter jQuery pour la manipulation du DOM et les échanges AJAX
- Mettre en œuvre les API JavaScript introduites par HTML5
- Comprendre le rôle de Node.js pour l'exécution de JavaScript côté serveur
Programme détaillé
Module 1 — Rappels JavaScript : ES5, DOM, événement
- Méthodes de création dynamique d'objets
- Phases des événements : capture et bubbling
- Gestion des événements et objets de type Event
- Structures de données XML et JSON
- Méthodes avancées d'ES5
- Exercice : échange de données JSON et création d'événements
Module 2 — Framework jQuery
- Fonctionnement de jQuery et intégration dans un projet
- Gestion et délégation des événements avec jQuery
- Échanges AJAX et gestion de formulaires avec jQuery
- Travaux pratiques : création d'un plugin jQuery
Module 3 — Initiation à ES6/2015
- Principales nouveautés de la spécification ES6/2015
- Supersets JavaScript : TypeScript, Babel et Traceur
- Déploiement d'ES6 en production
- Travaux pratiques : mise en production de code ES2015 avec TypeScript et Node.js
Module 4 — Programmation Orientée Objet
- Rappels sur les objets et leurs propriétés
- Chaîne de portée et chaîne de prototype
- Méthodes, héritage, portée des données privées et publiques, mapping et sérialisation
- Design patterns clés en JavaScript
- Closure functions, Singleton et modules
- Exercice : mise en pratique de la POO et développement d'un micro-framework de gestion du DOM
Module 5 — Expressions régulières
- Structure et syntaxe des expressions régulières
- Validation asynchrone avec les expressions régulières
- Travaux pratiques : validation de dates et d'adresses email
Module 6 — Environnement de débogage
- Outils de débogage : Chrome DevTools, Firefox Developer et Node-debug
- Gestion des messages d'erreur client en production
- Tests multinavigateurs et stockage des tests
- Tests de performance
- Travaux pratiques : détection de bugs et optimisation des performances avec Chrome DevTools
Module 7 — Échange de données, interactions
- Stockage embarqué : SQLite, LocalStorage et Cookies
- Gestion des latences de communication
- Sécurisation des échanges avec JSON Web Token
- Consommation de services distants avec XMLHttpRequest
- Introduction au serveur JavaScript Node.js
- Travaux pratiques : appel de services web, utilisation d'une base embarquée et échanges avec une base distante
Module 8 — Programmation JavaScript sous HTML5
- Nouveaux événements HTML5
- Gestion des API multimédia
- Modes de communication client/serveur en HTML5
- Utilisation des Web Workers
- Approche "offline first" pour le développement mobile
- Optimisation des communications client/serveur
- Travaux pratiques : manipulation JavaScript sous HTML5
Prérequis
Maîtriser JavaScript et HTML. Des notions de base en XML sont requises.