NodeJS

Formation NodeJS : développer des serveurs d’applications en Javascript NodeJS : développer des serveurs d’applications en Javascript

Formation NodeJS : développer des serveurs d’applications en Javascript

Résumé

- Logiciels : Visual Studio Code/SublimeText, Firefox, MongoDB
- Systèmes : GNU/Linux (à jour) ou Windows 10
- Internet : Toute connexion (peu de logiciels ou librairies à installer)
- 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.
- Tarif : Nous consulter.
- 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 : Conformité du matériel et des locaux aux personnes à mobilité réduite. Nous informer si un stagiaire en situation de handicap demande une adaptation.
- Taux de satisfaction 2i2l : 100% des stagiaires sont "satisfaits" ou "très satisfaits" à l’issue de leur formation.

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