Aller au contenu principal

M2I FORMATION : 04. JavaScript - Programmation avancée

Durée

21 heures

Modalités

Formation
  • Classe virtuelle
  • Présentiel
Évaluation

L’évaluation des acquis se fait en cours de formation, par des études de cas ou des travaux pratiques et, en fin de formation, par un questionnaire

Prix

Inter
La formation en Inter est dispensée pour un groupe de salariés d’entreprises différentes.
882€ HT / personne
Intra
La formation en Intra est dispensée pour un groupe de salariés d’une seule et même entreprise.
3528€ HT / groupe
4 stagiaires minimum

Public

Développeurs Web, architectes web, chefs de projet, webmasters…

Pré-requis

- Avoir des connaissances pratiques en JavaScript, HTML et CSS.

- Posséder des connaissances de base de XML.

Objectifs pédagogiques

- Découvrir les concepts avancés JavaScript ES5 

- Mettre en pratique la Programmation Orientée Objet 

- Maîtriser l'environnement de débogage

- Mettre en œuvre le framework JavaScript jQuery 

- Manipuler les API JavaScript HTML5 

- Appréhender la notion de JavaScript côté serveur avec Node.js

Programme détaillé

Jour 1 matin

§ Maîtrise des fonctions de Debug dans les IDE et les navigateurs

Configuration de Visual Studio Code afin de débogage depuis l’IDE.

Accès aux fenêtres de débogage depuis les extensions des principaux navigateurs (Chrome, Edge, FireFox)

Exemples de travaux pratiques (à titre indicatif)

Sur la base d’un programme intégrant les principales structures de JavaScript, utilisation des principaux outils de debogage

§ Rappels importants du langage

Les éléments de premier ordre dans JavaScript

La portée des données

Les fonctions

Objets ou fonctions ?

Le débogage avec les meilleurs outils actuels

§ Pièges du langage

Typage faible

"Hoisting"

Contexte et variables globales

Changement de contexte

Jour 1 après-midi

§ Programmation objet

Différentes façons de créer des objets

Constructeurs

valeur de "this" dans un objet

Prototype et __prototype

Diverses façons d'hériter

Visibilité

Jour 2 matin

Exemples de travaux pratiques (à titre indicatif)

Conception d'une application qui exploite les fonctions

Transformation de l'application, permettant d'exploiter les objets et l'héritage

§ Importance de la modularisation

Créer un module en JavaScript

Utilisation des modules

§ Programmation fonctionnelle

Fonctions anonymes

Fonctions immédiates

Fonctions internes

Redéfinition

Surcharge et mot-clé (arguments)

Closure

Jour 2 après-midi

§ Structuration et qualité du code

Séparation en multiple fichiers

Définition de modules

Asynchronous Module Definition (AMD)

AMD avec Require.js

Impacts des "closures" sur la lisibilité

Qualité avec JSHint et JSLint

Exemples de travaux pratiques (à titre indicatif)

Modularisation avec Require.js de l'application développée le jour précédent

Utilisation des outils de Lint

§ L'héritage jQuery

Bases de jQuery

Exploitation des sélecteurs en jQuery

Intérêts de jQuery  par rapport JavaScript

Les composants graphiques de jQuery

Jour 3 matin

§ Exploiter les API HTML5 en JavaScript

Validation des formulaires en JavaScript

Solutions de stockage

 -  LocalStorage

 -  IndexedDB

JSON

Web Sockets

Web Workers

Jour 3 après-midi

§ JavaScript et Node.js

Différences dans les langages

Asynchronisme

REST serveur en Node.js et REST client en JavaScript

Présentation d'une solution Web 100% JavaScript

Exemples de travaux pratiques (à titre indicatif)

Exploitation des API de HTML 5 depuis JavaScript

Utilisation des dernières fonctionnalités de ES7 et 8, avec l'asynchronisme (wait/async), promises

Intégration d'un serveur simple Node.js dans la solution

§ Evolutions récentes : ECMAScript 6 et 7

ECMAScript 6 et ses nouveautés

 -  Classes

 -  Modules

 -  Fonctions fléchées

 -  Promise

 -  Nouvelles méthodes de "Object"...

Sessions

Filtrer les résultats
Modalités pédagogiques
Formation synchrone se déroulant avec la présence physique du (des) formateur(s) et du (des) apprenant(s) réunis dans un même lieu de formation.
Formation combinant des séquences en présentiel et des séquences à distance synchrones ou asynchrones.
Formation à distance, asynchrone, s’appuyant sur une plateforme d’apprentissage, pouvant être complétée par d’autres modalités de formation à distance (visio-conférence…)
Formation à distance, synchrone, s’appuyant sur un dispositif de visio-conférence. La classe virtuelle recrée à distance les conditions d’une formation en salle traditionnelle.
Type de formation
La formation en Inter est dispensée pour un groupe de salariés d’entreprises différentes.
La formation en Intra est dispensée pour un groupe de salariés d’une seule et même entreprise.
Options
Les compétences professionnelles visées par la formation sont validées via un test permettant d’obtenir une certification officielle.
Ces sessions ne peuvent être ni annulées ni reportées par l’organisme de formation.