En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de cookies pour vous proposer des services et offres adaptés à vos centres d’intérêts.
Pour en savoir plus et paramétrer les cookies, suivez ce lien
Développeur de compétences
  •  
  •  
  •  

Formation Node.js


  • Objectifs
  • Profils
  • Pré-requis
  • Moyens pédagogiques
  • Certificat / Attestation
  • Connaître l'architecture et le fonctionnement de Node.js
  • Savoir installer et configurer Node.js et son écosystème de plugins
  • Comprendre les concepts d'une architecture asynchrone.
  • Savoir créer des applications Node.js
Trouvez votre prochaine formation

Programme

    Rappel des bonnes pratiques javascript
    • Visibilité des variables
    • Structuration de code
    • Les Closures
    • Objets et prototypes
    • Underscore.js

    Introduction à node.js
    • Origine du projet
    • Le moteur d'interprétation Chrome V8
    • La notion de gestion d'événements
    • Les différents usages
    • Overiew de l'écosystème de plugins
    • Installation
    • Un tout premier exemple

    Architecture de node.js
    • Asynchronisme
    • Programmation par callbacks
    • L'event loop

    Modules et gestion de dépendances
    • L'approche modulaire
    • NPM et manipulation des modules
    • Le fichier package.json en détail
    • Modularisation de son code
    • Modules noyaux: console, process, os, fs, path et util
    • Publier un module sur NPM

    Node et le web : http, connect & express
    • Périmètre du module HTTP
    • Connect et ses middlewares
    • Serveur Web avec Express
    • Générer un serveur Express generator
    • Router les requêtes
    • Gestion d'une requête et création d'une réponse
    • Utiliser un moteur de template
    • Ouverture à Passport et Hapi

    L' asynchrone en détails
    • Callback Hell & Pyramid of Doom
    • Le module async
    • Les promesses
    • Exemples d'enchaînement et de parallélisation
    • Gestion des erreurs

    Communication temps réel
    • Intégration des WebSockets HTML5
    • Socket.io
    • Gestion des transports
    • Intégration côté client et côté serveur

    La gestion des streams
    • Description de Streams2
    • Buffers
    • Type de flux
    • Pipelining
    • Object mode
    • Les outils : through2, trumpet, JSONStream…
    • Gulp

    Liaison avec la persistance des données
    • Approche via le driver ou un ORM
    • Intégration avec une base de données relationnelle
    • Modules d'abstraction SQL
    • Le module Sequelize
    • Intégration avec une base de données NoSQL
    • Le module Mongoose

    Outillage et usine logicielle
    • Outils d'édition
    • Utilisation des logs
    • Outils de debogage
    • Tests unitaires avec Mocha
    • Modules Chai et Sinon
    • Nodemon
    • L'orchestration des tâches (build) avec Grunt
    • Intégration dans le serveur d'intégration Jenkins

    Outillage et usine logicielle
    • Outils d'édition
    • Utilisation des logs
    • Outils de debogage
    • Tests unitaires avec Mocha
    • Modules Chai et Sinon
    • Nodemon
    • L'orchestration des tâches (build) avec Grunt
    • Intégration dans le serveur d'intégration Jenkins

    Node.js en mode cluster
    • Utilisation du module cluster
    • Master et workers
    • Messaging
    • Gestion des erreurs

    Au delà de node.js
    • Stack MEAN
    • Déploiement de Node dans le Cloud
    • Exemple avec AWS, Heroku
    • Monitoring avec pm2 et NewRelic

* Cette durée est indicative et peut varier en fonction du niveau des participants et de l’adaptation du contenu à votre problématique