Programme Javascript
Introduction
Le rôle de JavaScript
Standards, compatibilité et outils
Problématiques (chargement, sécurité, accessibilité, référencement, performances).
Le langage JavaScript
Variables et types de données
Opérateurs
Conditions et bouclesFonctions
Objet simple et JSON
Objets natifs : window, document, etc.
Manipulation de la page (DOM)
Sélection d’éléments
Modification du contenu HTML
Modification du graphisme CSS
Evénements interactifs
Liste des événements : formulaires, etc.
Réagir à un événement
Réactions à retardement
AJAX : dialoguer avec le serveur
XMLHttpRequest
Méthodes et en-têtes HTTP
Récupération de contenus HTML, XML ou JSON
Outils et bonnes pratiques
JSdoc et Closure Compiler
JSHint
Debugger
Profiler et Navigation Timing API
Gestion des erreurs : exceptions
Les données et les boucles
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
Contrôle des paramètres
Paramètres obligatoires / facultatifs / indéfinis
Gestion intelligente des paramètres
Fonctions anonymes, closures et callback
Performances
Minification et concaténation des scripts
Mode strictP
ortée : encapsulation / namespace
Garbage collector
Efficacité d’un algorithme : temps et espace
Programmation Orientée Objet : les bases
Intérêts : maintenance, évolutions, etc.
Fonction constructeur
Prototype
Contexte (this) et tests
Programmation Orientée Objet : concepts avancés
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
Design patterns
Principes SOLIDImplémentation / généralisation / spécification
Polymorphisme et principe de substitution
Association : composition / agrégation
Principaux design patterns
Structures de données avancées
8 rue Colbrant • 59000 Lille • tél. : 03 20 73 99 40 • https://capside-formation.fr • contact@capside-formation.fr