Fiche Formation

Node JS

Le JavaScript côté serveur

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
Retourner au catalogue des formations
Durée2 jours
LieuParis

Prochaines Sessions

Paris - Nous contacter
1 390€
Réserver une place

Informations Pratiques

file_download Télécharger la fiche

Vous avez des questions ?

N'hésitez pas à nous contacter pour réserver votre formation, ou si vous avez des questions sur nos formations :

  • call 01 44 75 42 55
  • print 01 44 75 42 55
  • mail_outline training@soat.fr
  • location_on SOAT TRAINING - 87-89 quai de Panhard et Levassor - 75013 Paris
link  Formulaire de contact

Réservez votre formation

contact

Par téléphone : 01 44 75 42 55

Par Fax : 01 44 75 05 25

Par mail : training@soat.fr

Par courrier : SOAT TRAINING - 87-89 quai de Panhard et Levassor - 75013 Paris

Ou directement en ligne