Développement Web & No-Code
JavaScript, programmation avancée : APIs, sécurité, architecture et industrialisation
Avancé
À propos de cette formation
Cette formation de 3 jours propose un panorama complet des techniques avancées de développement JavaScript. Elle couvre les APIs de communication modernes (Fetch, WebSocket, Server-Sent Events), le stockage côté client, la création d'applications hors-ligne avec les Service Workers, l'industrialisation des projets et les fondements de l'architecture sécurisée. Les participants repartent avec une vision globale des patterns et bonnes pratiques nécessaires pour développer des applications web de nouvelle génération. Ce programme est éligible au financement OPCO Atlas.
Objectifs de la formation
- Explorer les dernières évolutions du langage JavaScript
- Maîtriser les fonctions avancées : modèle objet, modules, itérations et programmation asynchrone
- Exploiter les APIs de communication modernes (Fetch, WebSocket, Server-Sent Events)
- Gérer le stockage côté client et développer des applications hors-ligne avec les Service Workers
- Concevoir des architectures sécurisées et industrialiser ses projets JavaScript
Programme détaillé
Module 1 — JavaScript, le langage incontournable
- Tour d'horizon des fondamentaux : variables, opérateurs, instructions et fonctions
- Objets JavaScript, callbacks et manipulation du DOM
- Gestion des événements et programmation orientée objet en JavaScript
- Aperçu des évolutions du langage depuis ES5.1
- Travaux pratiques : puzzle autour des définitions et concepts clés
Module 2 — Outillage et environnement de développement
- Choisir et configurer un IDE adapté au développement JavaScript
- Déboguer et tester une application web
- Packager une application web et gérer les dépendances
- Travaux pratiques : mise en place complète de l'environnement de développement
Module 3 — APIs de communication
- Fonctionnement détaillé du protocole HTTP
- Fetch API pour les requêtes asynchrones
- Formats d'échange : JSON et XML
- Server-Sent Events et API WebSocket
- Programmation asynchrone avec les Promises
- Travaux pratiques : interrogation d'un serveur back-end mis à disposition des participants
Module 4 — Stockage côté client
- Web Storage : localStorage et sessionStorage
- IndexedDB et Web SQL Database
- Concevoir des applications fonctionnant hors-ligne
- Les Service Workers et les Progressive Web Apps (PWA)
- Travaux pratiques : enrichissement du projet fil rouge avec persistance locale longue durée
Module 5 — Industrialisation des projets JavaScript
- Organisation et structuration du code en modules
- Garantir la compatibilité entre les différents navigateurs
- Accessibilité et conformité du code source
- Minification des ressources et optimisation du bundle
- Gestionnaires de modules (module bundlers) et frameworks de test automatisé
- Travaux pratiques : mise en place d'une chaîne d'industrialisation complète sur le projet fil rouge
Module 6 — Architecture, sécurité et bonnes pratiques
- Principes d'architecture et de conception d'applications JavaScript
- Sécurité web : cross-domain scripting, CORS et CSP (Content Security Policy)
- Se prémunir des attaques XSRF (Cross-Site Request Forgery)
- Bonnes pratiques d'optimisation et de protection du code
- Travaux pratiques : modélisation d'une problématique métier dans un modèle objet sécurisé
Prérequis
Avoir une pratique concrète de JavaScript, HTML et CSS. Des notions de base en XML sont attendues.