Polymont | University

Node JS

Objectifs : Comprendre le fonctionnement de Node.js, ses forces et [...]
STUDENTS ENROLLED

    Objectifs :

    • Comprendre le fonctionnement de Node.js, ses forces et ses faiblesses.
    • Être capable de créer une application Node.js complète, en suivant les bonnes pratiques de développement.
    • Être capable de choisir les bons modules npm pour la bonne tâche.
    • Être capable de détecter les situations où Node.js sera un choix adapté et le justifier.

    Pré-requis

    • Connaissances de base du développement web (HTML, CSS, JavaScript).
    • Connaissances des principes de développement côté serveur (la formation n’est pas adapté aux développeurs uniquement frontend).
    • Installation de XCode pour ceux qui sont sous Mac.
    • Ordinateur portable à apporter

    Programme :

    Jour 1 – Découverte

    Présentation de Node.js

    • JS côté serveur, pourquoi et comment ?
    • Présentation de Node.js (REPL, single-threaded event-loop, APIs non bloquantes, streams…)
    • Programmation asynchrone : joies & désillusions (Continuous Passing Style, Promise, Fibers, bonnes pratiques de gestion de ses appels asynchrones)
    • Les modules et npm

    Anatomie d’un module

    • La gestion de dépendances avec npm, le gestionnaire de paquets officiel de Node.js
    • Packaging et déploiement d’un module sur npm

    Tests

    • Tests unitaires avec Mocha, le framework de tests unitaires, et Chai, la librarie d’assertions intuitive
    • Tests fonctionnels avec Zombie, Phantom et Casper, les navigateurs
      “headless”

    Application web avec Node.js

    • Écriture d’un serveur web
    • Utilisation du module « Express », le micro-framework web le plus populaire (routage, vue, middlewares, montage d’applications)
    • Gestion des fichiers statiques et comparaison avec les serveurs existants
    Jour 2 – Les mains dans le cambouis

    Notre application

    • Présentation du projet développé durant le reste des travaux pratiques
    • Discussions autour des technologies à utiliser et du modèle de données

    Node.js et les bases de données

    • SQL (MySQL, PostgreSQL, SQLite…)
    • NoSQL (MongoDB, Redis, et bonnes pratiques) o Modélisation

    Enhance your webapp

    • Aller plus loin avec Express (traitement de formulaires et authentification avec passport, le gestionnaire de sessions polyglote)
    • Websockets avec Socket.io (présentation, intégration côté serveur et côté client, et nombreux ateliers)
    Jour 3 – Vers l’infini et au-delà !

    Déléguer les traitements lourds

    • Les limites imposées par le modèle single-thread de Node.js
    • Les solutions pour déléguer ces traitements à d’autres processus (pub/sub Redis, AMQP, ØMQ, Gearman… mais aussi le multi-threading)

    Aller plus loin dans les performances

    • Comment rendre son application « scalable »
    • Profiter de tous les cœurs de son processeur avec cluster o Trollons joyeusement avec un comparatif de performances

    Conclusions & conseils

    • Synthèse des bonnes pratiques de développement o Conseils de survie dans l’écosystème Node.js

    Télécharger les documents


    Node JS
    Node JS.pdf
    READ MORE
    LESS

    Course Reviews

    No Reviews found for this course.

    TAKE THIS COURSE
    • Right now

    Date de début

    Le 2016-11-07

    Date de fin

    Le 2016-11-09

    Heure

    À 9:30

    Code

    DLO-180

    Télécharger le formulaire d’inscription.

    Polymont University © 2015 - Tous droits réservés