JavaScript côté serveur
- Genèse du JavaScript côté serveur et de Node.js
- Le moteur Google V8 utilisé côté serveur
- Pourquoi utiliser la programmation événementielle
- Approche non bloquante d'une application
- L'écosystème Node.js (socketstream, expressjs...)
Premiers pas en Node.js
- Installation du serveur Node.js
- Le gestionnaire d'extensions NPM
- Premier cas concret : Hello World !
- Un serveur Web en quelques lignes
- L'injection de fonctions en Javascript
La programmation asynchrone et orientée événements
- Quel intérêt de développer en asynchrone
- La gestion événementielle : réagir plutôt qu'attendre
- Cas concret pour la lecture de flux
- Usage dans les bases de données
La gestion de routes
- Parsing d'URL (paramètres, requête...)
- Traiter une requête en mode asynchrone
- Mettre en place un gestionnaire de routes
Tour d'horizon de l'API Node.js
- Les fonctions utilitaires (console, outil...)
- La gestion de buffers. Accès aux fichiers
- Utilisation des évents et des timers programmables
- Gestion des requêtes/réponses HTTP. HTTPS
- Création de processus fils, https, sockets TCP et UDP...
Persistance des données
- Initiation à une base NoSQL : Redis.io
- Utilisation de Redis.io pour la gestion de session
- Persister dans le Cloud : MongoDB
Test d'une application Node.js
- Premiers pas en test avec Mocha
- Les assertions et le test synchrone et asynchrone
- Différentes méthodes de tests (inclusifs, exclusifs...)
- Le support du navigateur
La boîte à outils du développeur
- Les "ceintures d'outils" Javascript : gestion améliorée des tableaux, des itérations...
- La bibliothèque async : rendre l'asynchrone séquentiel
- Autres bibliothèques intéressantes