OBJET, FONCTIONNALITÉS AVANCÉES, PERFORMANCES, TESTS, ANGULAR 2 & 4,VUEJS, ES6/7
Avec l'essor des interfaces riches et les nombreuses nouveautés JavaScript apportées par le HTML5, qui permettent désormais de faire jusqu'à une application complète, les besoins en JavaScript sont devenus aussi importants que ceux des langages serveur (PHP, Java, etc.) étant donné l’animation qui règne autour de Javascript (front end, back end, full stack, frameworks, mobile, etc.).
Il n'est donc plus possible d'avoir une approche simplement basique de JavaScript et c'est un langage qui est incontournable pour tout développeur Web. Il est complexe avec beaucoup de subtilités à connaître et il faut désormais pousser l'abstraction et l'organisation à un niveau supérieur, grâce la Programmation Orientée Objet (POO) notamment.
Cependant, même si vous apprendrez à programmer Objet en Javascript, cette formation cherche aussi à vous munir des bons outils à tous les niveaux : conformité, documentation, tests, performances, debugger, etc. et à les utiliser avec recul (l’outil ne doit pas faire oublier la conception et la réflexion en amont).
Vous apprendrez également à mettre en œuvre les nouveautés apportées par Ecmascript (ES6, ES7, etc.) pour que votre code soit plus robuste, lisible, et facile à maintenir.
Les développeurs Javascript sont assistés par de plus en plus de frameworks qui sont incontournables dans les projets professionnels. Aussi vous disposerez d’une vue claire sur le panorama actuel des frameworks Javascript tout en mettant en œuvre les fondamentaux des standards Angular, dans ses versions 2 et 4, et VueJS.
A l'issue de cette formation JavaScript avancée vous saurez :
Au minimum connaître les bases de HTML, CSS et Javascript.
Avoir suivi la formation "JavaScript, les fondamentaux" (IJDH) ou disposer d'un niveau équivalent.
Intérêts pour le développeur et les projets (lisibilité, maintenance, évolutions, etc.)
Les concepts de base (classe, méthode, propriété, objet)
Créer ses propres objets et utiliser des objets existants
Exemples concrets en Javascript
Constructeur et Prototype
Contexte (this)
Mise en œuvre de l’héritage en Javascript
Les classes natives : String, Array, Object, etc.
Augmenter ou réécrire ?
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 / bind
Méthodes et propriétés statiques
Méthodes abstraites et interfaces
Duck Typing et Javascript
Programmation objet et ES6/7 (getter, setter, etc.)
Types de données et subtilités (constantes, variables, énumération, etc.)
Les différentes formes d'incrémentation
Manipulation de flux binaire
Arrays : manipulation avancée
Règles de transtypage et comparaisons
Savoir utiliser les expressions régulières
Aspects avancés des fonctions en Javascript (contrôle des paramètres, etc.)
Gestion des erreurs : exceptions
Rappels sur Ajax
JSON et (dé)sérialisation
Traitements asynchrones (promesses, fetch, async/await, etc.)
Consommer des web services en Javascript
Un exemple de Javascript côté serveur avec Node.js
Les différentes formes de stockage des données (Local, Cookies, SQLLite, etc.)
Mise en page du code avec ESLint
Imposer des règles de codage « propre » (ECMAScript 2015, React, etc.)
Portée : encapsulation / namespace
Documenter votre code source « proprement » avec JSdoc
Goulot d’étranglement des phases de chargement d’une page Web
Analyse fine des performances de bout en bout avec Navigation Timing API
Rendre votre code Javascript plus efficace avec Closure Compiler
Gestion mémoire et Garbage collector
Synthèse des outils de tests (JsUnit, SugarTest, etc.)
Tester efficacement la compatibilité multi navigateurs
Debugger avec Chrome Devtools et Firefox Developer
Gestion de paquets et dépendances
Comment gérer les nombreuses librairies externes ?
Bien comprendre Node et NPM
L’outil yarn
Gérer son projet et ses paquets en ligne de commande
Construire son application et automatiser l'installation de dépendances
Industrialiser les process de compilation et mise en production de ses applications
Vocabulaire et normes (Ecma, typescript, Ecmascript, Javascript, ES6/ES2015, ES7/ES2017, etc.)
Les librairies Underscore et Lodash
Le système d'apport progressif (staging)
Compatibilité ES7 avec les navigateurs et les frameworks
Les modules et le build (AMD, CommonJs, etc.)
Simplification de la manipulation des chaînes de caractères (string template, multi-lignes, tag, string.raw)
Affecter des données par décomposition (tableau, objet)
Fat arrow et fonctions anonymes
Limites du JavaScript natif
Comprendre le rôle des principaux frameworks et les technologies associées : Angular, Vue, React, Meteor, Node
Exemples de bases avec Angular
React, philosophie et principes de fonctionnement
Les tendances du marché et des projets
Principes généraux d'Angular 2 et 4
Templates, nouvelles syntaxes
Cycle de vie des composants
Principe de l’injection de dépendances
Les formulaires Angular 2 et 4 (template driven, model-driven, etc.)
Le routage
Les tests
Développer des « Single Page Applications » avec Vue JS
Installation de VueJS
Structure d’un projet VueJS
Commandes utiles
Définition d’un composant VueJS (attributs, fonctions)
Le fichier App.vue (template, script, style)
Créer notre première page
Build du projet
Utilisation de l’API GitHub
Tous les modules de ce programme font l’objet de travaux pratiques dont voici quelques exemples:
4 j
Web - Digital
Maîtriser JavaScript3 j
Web - Digital
Animate CC2 j
Web - Digital
Bootstrap : L'essentiel4 j
Mon avis sur le contenu du stage :
"C'est super pour moi"
Mon avis sur le formateur :
"C'est super pour moi"
Mon avis sur le contenu du stage :
"Nouveauté ES2015 / Designe Pattern / Test Unitaire / Jasmine / Mock etc "
Mon avis sur le contenu du stage :
"Très satisfait .. j'ai appris enormément"
Mon avis sur le formateur :
"Assez concis maitrise son sujet"
Lire tous les avis
Mon avis sur le contenu du stage :
"ça serait bien d'avoir plus de travaux pratiques/exercices même si c'est difficile de tout faire sur 2 jours."
Mon avis sur le formateur :
"L'animateur a une excellente compétence en pédagogie, à expliquer de manière simple les concepts difficiles."
Ce que j'ai le plus apprécié :
"Environnement de travail satisfaisant pour cette formation."
Mon avis sur le formateur :
"Kevin est un excellent pédagogue, les 2 jours de stages sont passés très vite, tous les sujets que nous avons souhaité aborder ont pu être traité en profondeur."