Formation NodeJS : développer des serveurs d’applications en Javascript
Résumé
Logiciels : Visual Studio Code/SublimeText, Firefox, MongoDB
Durée : 28 heures
Objectif :
– maîtriser les bases de NodeJS pour développer des serveurs d’applications complets, à même d’exposer des services REST ou des applications web
Public : Développeurs back et front, même débutants.
Pré-requis : Connaissances globales sur Javascript et les technologies web. Avoir des besoins métier.
Méthodes mobilisées : Alternance d’apports théoriques et d’exercices de mise en application pratique. Support numérique pour les apports théoriques, projet fil rouge partant de la mise en place de l’environnement jusqu’à la création d’une API REST permettant la gestion complète d’un album photos en ligne
Modalités et délais d’accès : Sur inscription préalable au minimum 1 semaine avant le début de la formation selon disponibilité du formateur.
Modalités d’évaluations : Une évaluation du niveau des stagiaires est réalisée avant l’entrée en formation par téléphone ou au moyen d’un questionnaire. Évaluation des acquis et de la satisfaction en fin de formation.
Accessibilité aux personnes en situation de handicap ou présentant des difficultés d’apprentissage : nous pouvons proposer des solutions de compensation de nos prestations en adaptant les moyens pédagogiques, techniques et d’encadrement (les précisions).
Taux de satisfaction 2i2L : 96,34 % des stagiaires sont satisfaits à l’issue de leur formation.
Tarif : pour une demande de formation interne, nous consulter.
Présentation
Liens NodeJS :
– Le site officiel de NodeJS
– Le site officiel de MongoDB
– Le site officiel de Visual Studio Code
– NodeJS sur Wikipédia
– Licence de NodeJS
– Licence de MongoDB
– Licence de Visual Studio Code, VSCode est sous MIT Licence (X11).
Programme
Javascript côté serveur
– Rappels sur Javascript
– Différences entre JS côté client et JS côté serveur
– Forces et faiblesses
– Zoom sur l’architecture WOA (Web Oriented Architecture)
Introduction à NodeJS
– Premier programme Node.js
– Commandes usuelles
– Gestionnaire de dépendances
– Programmation asynchrone
– Structurer son programme
– Projet fil rouge : création d’une application NodeJS permettant de créer et de récupérer des informations sur un album photos
Serveur d’application
– Développer un premier serveur web
– Développer une application web avec Express
– Projet fil rouge : créer des pages permettant à l’utilisateur de créer un album, de le consulter et d’y ajouter des photos
API REST
– Développer une API REST avec Restify
– Projet fil rouge : exposer une API permettant à des développeurs ou à une application AngularJS d’interagir avec le service
Websockets
– Interagir avec le client : les websockets
– Projet fil rouge : informer en temps réel de la mise à disposition de nouvelles photos dans un album
Base de données
– Connexion avec une base de données
– Interaction avec une base de données relationnelle
– Interaction avec une base de données NoSQL
– Projet fil rouge : sauvegarde et récupération des albums dans une base MongoDB
Tests Unitaires
– Rappels sur le concept de tests unitaires
– Tests unitaires avec Mocha
– Tests fonctionnels avec Phantom
– Projet fil rouge : mise en place de tests unitaires pour valider le fonctionnement des développements précédents
Concepts avancés
– Multi processus et multi threading
– Fil de messages avec ZMQ
– Mise en cluster d’une application
– Bonnes pratiques