Objectifs pédagogiques
- Utiliser des notions avancées de JavaScript
- Développer des applications exploitant les technologies les plus actuelles du côté du client, à savoir le framework Angular 2 / 13, ainsi que sur le framework Node.js sur le serveur
- Gérer les différents protocoles d'échanges ainsi que les formats de données
- Utiliser les différents outils de construction et d'administration côté client.
Modalités et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatique...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Niveau requis
Avoir des connaissances de base sur JavaSript et HTML 5 / CSS 3.
Testez vos connaissances
Afin de vous orienter vers la formation la plus adaptée à votre niveau, passez votre test de connaissances pour évaluer vos compétences actuelles.
Temps estimé : 4 minutes.
Passer le testPublic concerné
Développeurs ayant à réaliser des applications clientes SPA ou non.
Programme
Jour 1
Rappels avancés de JavaScript
- Les types de variables en JavaScript
- Portée des déclarations des variables dans JavaScript
- Les diverses formes de fonctions dans JavaScript
- Les différents types d'objets dans JavaScript
- Les prototypes dans JavaScript
- Mise en oeuvre de l'asynchronisme dans JavaScript
- Les fonctions de rappel
- Gestion des modules
- Les frameworks de gestion des modules disponibles
Exemple de travaux pratiques (à titre indicatif)
- Ecriture de scripts JavaScript reprenant les aspects vus en cours
Les protocoles et structures de données
- Rappels sur REST
- Mise en oeuvre de REST
- Rappels sur JSON
- Echange de données avec REST et JSON
Exemple de travaux pratiques (à titre indicatif)
- Appel depuis un script JavaScript d'API REST accessibles sur un serveur
Présentation de Bootstrap
- Présentation du framework Bootstrap
- Applications Responsive avec Bootstrap
Exemple de travaux pratiques (à titre indicatif)
- Ecriture de feuilles HTML intégrant Bootstrap et testées sur différents médias
Jour 2
Comparaison des frameworks Front End
- Présentation, avantages et inconvénients de
- React.js
- Vue.js
- Angular
Présentation d'Angular 2 / 13
- Architecture d'une application Angular
- Les modules
- Organiser l'application en modules
- Les components
- Les templates
- Les directives
- Les services
- La DI (Dependency Injection)
- Le routage
Mise en oeuvre d'Angular 2 / 13
- Structure d'un projet Angular 2
- Mise en oeuvre
- Des templates
- Des formulaires
- Travail sur HTTP, récupération des données
- Mise en oeuvre du routage
Jour 3
Exemple de travaux pratiques (à titre indicatif)
- Création d'un projet complet avec Angular 2 / 13
La gestion des modules et npm
- Historique des modules JavaScript
- Présentation de la gestion des modules
- Présentation de npm
Exemple de travaux pratiques (à titre indicatif)
- Installation de npm et utilisation de ses diverses fonctions, en local et global
Jour 4
Présentation de Node.js
- Particularités de JavaScript côté serveur
- Installation de Node.js, l'outil npm
- La base de Node.js : la programmation asynchrone
- Comment palier la non-prise en charge des threads
- La gestion des modules avec require
- Les modules HTTP, FS, URL, DNS...
- L'accès aux bases de données
- Accès à la base MongoDB et MySQL
Exemples de travaux pratiques (à titre indicatif)
- Ecriture d'un serveur HTTP en Node.js
- Accès à des fichiers
- Accès à des bases de données
- Génération de l'interface HTML
- Utilisation des modules utilitaires
Présentation du framework Express Web (Node)
- Configuration d'Express Web
- API requêtes et réponses
- Sérialisation en XML ou JSON
- Orientation REST
- Routage des requêtes
- Ecriture d'un serveur Express Web REST
Exemple de travaux pratiques (à titre indicatif)
Ecriture d'un serveur de Web Services REST avec Express Web
Jour 5
Socket.io (Node)
- Les WebSockets
- Réception et envoi de messages
- Communication avec plusieurs clients
Exemple de travaux pratiques (à titre indicatif)
- Ecriture d'un serveur de WebSockets et de son client en JavaScript client
Les outils d'industrialisation
- Les transpileurs, Babel
- Automatisation des tâches
- Avec Grunt
- Avec Gulp
- Gestion des dépendances avec Bower
- Présentation de Webpack, le bundling de modules
- Gestion des sources avec GIT
Exemple de travaux pratiques (à titre indicatif)
- Ecriture d'un script de packaging Webpack
Examen M2i (en option)
- Prévoir l'achat de l'examen en supplément
- L'examen (en français) sera passé le dernier jour, à l'issue de la formation et s'effectuera en ligne
- Il s'agit d'un QCM dont la durée moyenne est d'1h30 et dont le score obtenu attestera d'un niveau de compétence
- L'examen n'est pas éligible au CPF, mais permettra néanmoins de valider vos acquis
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation et/ou un examen M2i
Les + de la formation
Un examen M2i permettant de valider vos acquis à l'issue de la formation est disponible sur demande (coût : 120€).