Formation JavaScript

Développer des sites Web dynamiques avec JavaScript

  • Acquérir les bases JavaScript nécessaires pour développer des pages web plus conviviales et interactives

  • Comprendre comment rajouter de l'interactivité sur les pages et formulaires Web

  • Savoir manipuler dynamiquement des objets HTML

  • Manipuler le contenu de la page : animer son aspect graphique, mettre en place l'aspect interactif grâce aux événements déclenchés par l'utilisateur, continuer à dialoguer avec le serveur sans recharger la page (AJAX)

    Cette formation JavaScript aborde les aspects pertinents du langage dans un esprit de développeur

Maîtriser le langage HTML, CSS. Connaître un langage de programmation et avoir une bonne connaissance du Web


Programme de la formation JavaScript

Présentation de Javascript

Place dans l’architecture d’un site web

Standards et compatibilité

Outils de travail

Le langage JavaScript

Variables et types de données

Opérateurs

Conditions et boucles

Fonctions

Objet simple et JSON

Objets natifs : window, document, etc.

Les données et les boucles en JavaScript

Types de données et subtilités

Les différentes formes d'incrémentation

Manipulation binaire

Arrays : manipulation avancée

Objets : les différentes syntaxes

JSON et (dé)sérialisation

Copie / référence

Règles de transtypage et comparaisons

Expressions Régulières

Des constantes ?

Problèmes d'énumération

Les fonctions en JavaScript

Contrôle des paramètres

Paramètres obligatoires / facultatifs / indéfinis

Gestion intelligente des paramètres

Fonctions anonymes, closures et callback

Programmation Orientée Objet en JavaScript

Intérts : maintenance, évolutions, etc.

Fonction constructeur

Prototype

Contexte (this) et tests

Les classes natives : String, Array, Object, etc.

Augmenter ou réécrire JavaScript

Visibilité : propriétés publiques / privées

Visibilité : méthodes publiques / privées / privilégiées

Les différentes formes d'héritage

Appels parents : call / apply

jQuery.extend()

Méthodes et propriétés statiques

Méthodes abstraites et interfaces

Nouveaux outils des navigateurs modernes

Manipuler les éléments de la page avec le DOM

Sélection d'éléments

Modification du contenu HTML

Modification du graphisme CSS

Événements dynamiques JavaScript

Vue d’ensemble des événements : formulaires, souris, clavier

Réagir à un événement

Informations et comportement par défaut de l’événément

Timers et animations

Requêtes serveur : AJAX

XMLHttpRequest

Méthodes et en-têtes HTTP

Résultat en HTML, XML ou JSON

Performances en JavaScript

Minification et concaténation des scripts

Mode strict

Portée : encapsulation / name

Garbage collector

Efficacité d'un algorithme

Design patterns JavaScript

Principes SOLID

Implémentation / généralisation / spécification

Polymorphisme et principe de substitution

Association : composition / agrégation

Principaux design patterns

Structures de données avancées

Outils et bonnes pratiques de développement en JavaScript

JSdoc et Closure Compiler

JSHint

Debugger

Profiler et Navigation Timing API

Gestion des erreurs : exceptions