1. Livres et vidéos
  2. Node.js - Exploitez la puissance de JavaScript côté serveur

Node.js Exploitez la puissance de JavaScript côté serveur

  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne
  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Ce livre s'adresse aux développeurs souhaitant découvrir et maîtriser la plateforme JavaScript Node.js. De bonnes connaissances sur le développement en JavaScript ainsi que sur les outils en ligne de commande sont nécessaires afin de tirer le meilleur parti de ce livre.

La progression pédagogique choisie par les auteurs débute par l'installation de Node sur les trois grands systèmes d'exploitation (GNU/Linux, OS X et Windows) puis couvre le fonctionnement du gestionnaire de paquets « npm », qui est le compagnon quotidien du développeur Node, et la présentation des concepts essentiels de la plateforme.

Les chapitres suivants présentent les puissants paradigmes que sont les flux et les promesses puis enchaînent sur des explications pratiques concernant la manipulation de fichiers et l'utilisation de bases de données. Viennent ensuite l'écriture des tests, les outils de développement qui permettent d'améliorer la qualité du code et de simplifier la vie du développeur en automatisant un maximum de tâches (comme par exemple JSHint et Gulp), les bonnes pratiques pour déboguer efficacement du code puis tout ce qu'il faut savoir pour la mise en production des applications.

Tout au long du livre, l'accent est mis sur les bonnes pratiques et l'ensemble des exemples présentés dans le livre est disponible sur le dépôt GitHub du livre afin que le lecteur puisse se lancer le plus rapidement possible.

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.


Les chapitres du livre :
Avant-propos – Présentation – Installation – Gestionnaire de paquets npm – Concepts – Flux – Manipulation de fichiers – Promesses – Application en ligne de commande – Application web – Bases de données – Tests – Outils de développement – Débogage – Mise en production

Table des matières

  • Avant-propos
    • 1. Pourquoi ce livre ?
    • 2. À qui s'adresse cet ouvrage ?
    • 3. Structure de l'ouvrage
  • Présentation
    • 1. Introduction
    • 2. Définition de Node
    • 3. Historique
    • 4. Success-stories
    • 5. Programmation orientée composant
  • Installation
    • 1. Introduction
    • 2. GNU/Linux
      • 2.1 n : simple et efficace
      • 2.2 Via les paquets
        • 2.2.1 Ubuntu/Debian
        • 2.2.2 Gentoo
        • 2.2.3 ArchLinux
        • 2.2.4 RHEL, CentOS, Fedora, etc.
      • 2.3 Via les sources
    • 3. OpenBSD et FreeBSD
    • 4. Mac OS
    • 5. Windows
    • 6. Vérification de l’installation
  • Gestionnaire de paquets npm
    • 1. Introduction
      • 1.1 Qu'est-ce qu'un paquet ?
      • 1.2 Exemple d'installation
      • 1.3 Registre npmjs.org
      • 1.4 Paquet global
    • 2. Recherche du bon paquet
      • 2.1 Recherche en ligne de commande
      • 2.2 Recherche sur npmjs.org
      • 2.3 Critères de confiance
        • 2.3.1 Popularité sur GitHub
        • 2.3.2 Intégration continue
    • 3. Versionnage
      • 3.1 Numéro de version
      • 3.2 Contrainte de version
    • 4. Gestion des dépendances
      • 4.1 Ajout
        • 4.1.1 Dépendance de production
        • 4.1.2 Dépendance optionnelle
        • 4.1.3 Développement
      • 4.2 Mise à jour
      • 4.3 Suppression
      • 4.4 Listage des dépendances
      • 4.5 Installation des dépendances manquantes
    • 5. Publication d’un paquet
      • 5.1 Création d'un compte sur le registre
      • 5.2 Saisie des métadonnées
      • 5.3 Exécutables
      • 5.4 Publication
    • 6. Gestion d’un paquet publié
      • 6.1 Mise à jour
      • 6.2 Ajout des mainteneurs
  • Concepts
    • 1. Introduction
    • 2. Modules
      • 2.1 Modules de base
        • 2.1.1 Stabilité
        • 2.1.2 Exemple
    • 3. Variables globales
      • 3.1 global
      • 3.2 process
        • 3.2.1 Événements
        • 3.2.2 Signaux
        • 3.2.3 Flux
        • 3.2.4 Contexte d'exécution
        • 3.2.5 Métriques
      • 3.3 console
      • 3.4 Buffer
        • 3.4.1 Construction
        • 3.4.2 Conversion
        • 3.4.3 Manipulation
      • 3.5 require()
      • 3.6 __filename et __dirname
      • 3.7 module
      • 3.8 exports
      • 3.9 Minuteurs
    • 4. Programmation asynchrone
      • 4.1 API asynchrone dans Node
      • 4.2 Programmation événementielle
      • 4.3 Boucle d’événements
        • 4.3.1 Fonctionnement simplifié
        • 4.3.2 Fonctionnement détaillé
  • Flux
    • 1. Introduction
      • 1.1 Qu'est-ce qu'un flux ?
        • 1.1.1 Mode de flux
      • 1.2 Pourquoi utiliser un flux ?
    • 2. Construction
      • 2.1 Readable
      • 2.2 Writable
      • 2.3 Duplex
      • 2.4 Transform
    • 3. Utilisation
      • 3.1 Lecture
        • 3.1.1 Mode flot
        • 3.1.2 Mode à la demande
        • 3.1.3 Sélection du mode de lecture
      • 3.2 Écriture
      • 3.3 Connexion
    • 4. Omniprésence dans Node
      • 4.1 Réseau
      • 4.2 Fichiers
    • 5. Implémentations et compatibilité
      • 5.1 Support des flux version 1
      • 5.2 S'affranchir de la version de Node
  • Manipulation de fichiers
    • 1. Introduction
    • 2. Manipulation de chemin
    • 3. Manipulation de dossiers
    • 4. Manipulation de fichiers
      • 4.1 Métadonnées
      • 4.2 Surveillance
    • 5. Manipulation de liens symboliques
  • Promesses
    • 1. Introduction
    • 2. Callbacks vs promesses
    • 3. Notion de promesse
      • 3.1 États d'une promesse
      • 3.2 Similarité avec du code synchrone
      • 3.3 Gestion des erreurs
    • 4. Création d'une promesse
      • 4.1 À la main
      • 4.2 À partir d'une fonction Node
      • 4.3 À partir d'un événement
    • 5. Intégration avec Node
    • 6. Intégration avec les générateurs
  • Application en ligne de commande
    • 1. Introduction
    • 2. Gestion des paramètres
    • 3. Testabilité
    • 4. Exécution directe
    • 5. Installation du programme
    • 6. Exemple complet
  • Application web
    • 1. Introduction
    • 2. Générateur Express
    • 3. Application
    • 4. Architecture
    • 5. Requête
    • 6. Réponse
    • 7. Distribution de fichiers statiques
    • 8. Routage
  • Bases de données
    • 1. Introduction
    • 2. SQL
      • 2.1 PostgreSQL
    • 3. NoSQL
      • 3.1 MongoDB
        • 3.1.1 Mongoose
      • 3.2 Redis
      • 3.3 LevelDB
  • Tests
    • 1. Introduction
    • 2. Lanceur de tests - Mocha
      • 2.1 Installation
      • 2.2 Création d'une suite de tests
    • 3. Assertions - Chai
    • 4. Espions et bouchons - Sinon.js
      • 4.1 Espions
      • 4.2 Bouchons
  • Outils de développement
    • 1. Introduction
    • 2. Automatisation de tâches - Gulpjs
      • 2.1 Installation
      • 2.2 Création de tâches
    • 3. Analyse du code - JSHint
      • 3.1 Installation et utilisation
      • 3.2 Configuration
      • 3.3 Environnements
      • 3.4 Options générales
      • 3.5 Options de mise en conformité
      • 3.6 Options assouplissantes
    • 4. Redémarrage automatique - node-dev
    • 5. Browserify
  • Débogage
    • 1. Introduction
    • 2. Ajout de traces
    • 3. Node-Inspector
      • 3.1 Installation et lancement
      • 3.2 Contrôle de l'exécution
      • 3.3 Inspection
      • 3.4 Intervention
  • Mise en production
    • 1. Introduction
    • 2. Forever
    • 3. Supervision
    • 4. Recettes
      • 4.1 Reverse proxy
        • 4.1.1 Avec Apache
        • 4.1.2 Avec Nginx
      • 4.2 Intégration avec systemd (GNU/Linux)
        • 4.2.1 Fichier de configuration
        • 4.2.2 Activation
        • 4.2.3 Utilisation
      • 4.3 Intégration avec SaltStack
        • 4.3.1 Installation et déploiement
        • 4.3.2 npm via SaltStack
    • Index

Auteurs

Julien FONTANETEn savoir plus

Julien Fontanet a démarré sa carrière d'informaticien comme Consultant indépendant autour du développement Open source. Olivier Lambert a été Administrateur système et réseau dans une multinationale.

En 2012, Julien et Olivier décident de mutualiser leur expérience et leurs compétences et créent leur entreprise, Vates SAS. Ils sont à l'origine de la solution Xen Orchestra et leur quotidien est aujourd'hui fait de développement JavaScript avec Node.js. Ils dispensent régulièrement des formations sur cette plateforme ainsi que sur AngularJS et Git. À travers les pages de ce livre ils partagent avec enthousiasme leur connaissance de Node et fournissent aux lecteurs un ouvrage complètement opérationnel sur le sujet.

Olivier LAMBERTEn savoir plus

Julien Fontanet a démarré sa carrière d'informaticien comme Consultant indépendant autour du développement Open source. Olivier Lambert a été Administrateur système et réseau dans une multinationale.

En 2012, Julien et Olivier décident de mutualiser leur expérience et leurs compétences et créent leur entreprise, Vates SAS. Ils sont à l'origine de la solution Xen Orchestra et leur quotidien est aujourd'hui fait de développement JavaScript avec Node.js. Ils dispensent régulièrement des formations sur cette plateforme ainsi que sur AngularJS et Git. À travers les pages de ce livre ils partagent avec enthousiasme leur connaissance de Node et fournissent aux lecteurs un ouvrage complètement opérationnel sur le sujet.

Caractéristiques

  • Niveau Confirmé à Expert
  • Nombre de pages 231 pages
  • Parution mars 2015
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-7460-0897-5
    • EAN : 9782746089785
    • Ref. ENI : EINOD
  • Niveau Confirmé à Expert
  • Parution mars 2015
    • HTML
    • ISBN : 978-2-7460-9586-1
    • EAN : 9782746095861
    • Ref. ENI : LNEINOD

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (48 Ko)