Informations pratiques

  • 20 rue des Frigos, 75013
    Voir le plan
  • 2 jours
  • 1 390€
Prochaines sessions :
Nombre de participants maximum : 10

Objectifs

  • Installer et configurer un serveur Node.JS
  • Comprendre les concepts utilisés par Node.JS
  • Maîtriser l’écosystème et les outils comme NPM ou Grunt
  • Être capable de créer des applications web

Public

  • Développeur serveur, avec des bases en JavaScript souhaitant créer des applications rapides et robustes

Pré-requis

  • Connaissances en développement côté serveur (PHP, Python, Ruby, Java…).
  • Connaissances minimales de la syntaxe JavaScript et de ses spécificités (Closure, Prototype, Scope, …)

Méthodes pédagogiques

50% théorie / 50% pratique

Description

Node.JS a beaucoup fait parler de lui au cours des 5 dernières années. Utilisant le moteur V8 de Google, reposant sur des concepts innovants et terriblement efficaces comme un système d'IO non bloquant ou une boucle d'événements unique, Node offre d'excellentes performances. Utiliser des technologies nouvelles comme MongoDB ou encore permettre une communication serveur/client immédiate via les WebSockets est très simple avec Node JS. Au cours de cette formation, nous aborderons l’installation de l’exécutable Node et développerons une application web aussi complète que productive.

Programme

Présentation de Node.JS

  • Bref historique sur Node.JS
  • Intérêt du JavaScript côté serveur
  • Node.JS, NPM et modules

Installation de Node.JS

  • Installation de Node.JS
  • Installation de NPM

Concepts principaux de Node.JS et leur représentation dans le code

  • Qu’est-ce que l’Event Loop (Boucle D’événement)?
  • Que signifie Non-Blocking IO (IO Non Bloquant)?
  • Difficultés de la programmation asynchrone (Callbacks,…)
  • Création d’événements personnalisés avec la classe EventEmitter

Aides à la programmation asynchrone

  • Les Promises
  • La librairie Bluebird

L’API Node.JS

  • Présentation de quelques modules importants
  • Un outil puissant de gestion de flux: les streams
  • Les variables globales : process, require, __dirname,…
  • Interactions avec d’autres fichiers grâce à fs ou path
  • Interactions avec l’environnement via les modules os ou child_process

Module NPM

  • CommonJS et require
  • NPM
  • Anatomie d’un package NPM
  • Création d’un module
  • Architecture

Serveur Web avec Express

  • Utilisation de l’API de base mise à disposition par Node.JS (net/http)
  • Découverte d’Express (Framework Web)
  • Création de routes personnalisées
  • Gestion des erreurs

Middleware

  • Définition du Middleware
  • Utiliser et définir des middlewares dans Express

Task Runners

  • Comprendre ce qu’est un task runner
  • Utiliser l’outil Gulp

Templates et langages

  • Comprendre ce qu’est un moteur de template
  • Avoir une vision simple de la syntaxe Jade
  • Apprendre de nouveaux langages
  • Utiliser Gulp pour des travaux de compilations

Persistance des données - MongoDB

  • Un mot sur le SQL - les ORM (Object-Document Mapper) Bookshelf et Sequelize
  • MongoDB et le JavaScript
  • Utiliser l’ODM (Object-Document Mapper) Mongoose

Authentification - Passport

  • Aborder l’authentification en Node.JS grâce à la librairie Passport
  • Être capable de se connecter à un serveur

Les WebSockets

  • Introduction au concept
  • Alternatives : Polling/Long Polling
  • Utiliser le framework Socket.io côté serveur
  • Un mot sur le client

Tests

  • Tests unitaires avec Mocha et Chai

Mis à jour :

Réservez une place

Vous avez des questions ?

Contactez-nous pour réserver votre formation, ou poser vos questions sur nos formations :

  • 01 44 75 42 55
  • training@soat.fr
  • SOAT TRAINING - 87-89 quai de Panhard et Levassor- 75013 Paris

Formations liées

SOAT Training est labellisé OPQF et certifié Datadock. Nos formations combinent de nombreuses approches.

intermédiaire
Formation Xamarin | Développer application mobile
Technologies
Mobile
débutant
Formation Usine logicielle et intégration continue
DevOps
Culture
Outils
Technologies
Java
débutant
Formation Spring | Développer applications Java
Technologies
Java
Depuis plus de 15 ans, nous développons une expertise pointue et complète sur les technologies Java. Nos formateurs suivent de près les évolutions de cet écosystème. En fin pédagogues, ils vous transmettront leurs connaissances au travers des formations qu’ils animent