Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

Node.js

Un article de Wikipédia, l'encyclopédie libre.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article contient une ou plusieurslistes().

Ces listes gagneraient à être rédigées sous la forme de paragraphes synthétiques, plus agréables à la lecture, les listes pouvant être aussi introduites par une partie rédigée et sourcée, de façon à bien resituer les différents items.
D'autre part,Wikipédia n'a pas pour rôle de constituer une base de données et privilégie uncontenu encyclopédique plutôt que la recherche de l'exhaustivité.
Node.js
Description de l'image Node.js logo.svg.

Informations
Développé parRyan Lienhart Dahl et lesdéveloppeurs de Node.js
Première version (16 ans, 268 jours)
Dernière version24.13.0 (Krypton,)[1]
25.6.1 ()[2]Voir et modifier les données sur Wikidata
Dépôtgithub.com/nodejs/nodeVoir et modifier les données sur Wikidata
Écrit enJavaScriptC++Python
Système d'exploitationLinux,Microsoft Windows,BSD etmacOSVoir et modifier les données sur Wikidata
TypeEnvironnement d’exécution
LicenceLicence MITVoir et modifier les données sur Wikidata
Documentationnodejs.org/docs/latest/apiVoir et modifier les données sur Wikidata
Site webnodejs.orgVoir et modifier les données sur Wikidata

modifier -modifier le code -voir Wikidata(aide)

Node.js est uneplateforme logiciellelibre enJavaScript, orientée vers les applicationsréseauévènementielles hautementconcurrentes qui doivent pouvoirmonter en charge.

Elle utilise lamachine virtuelleV8, la bibliothèquelibuv pour saboucle d'évènements, et implémente souslicence MIT les spécificationsCommonJS.

Parmi les modules natifs de Node.js, on retrouvehttp qui permet le développement deserveur HTTP etHTTPS. Ce qui autorise, lors du déploiement de sites internet et d'applications web développés avec Node.js, de ne pas installer et utiliser desserveurs webs tels queNginx ouApache.

Concrètement, Node.js est un environnement bas niveau permettant l'exécution deJavaScript côté serveur.

Node.js est utilisé notamment comme plateforme de serveur Web, elle est utilisée parGoDaddy,IBM,Netflix,Amazon Web Services,Groupon[3],Vivaldi,SAP[4],LinkedIn[5],Microsoft[6],[7],Yahoo![8],Walmart[9],Rakuten,Sage etPayPal[10],[11].

Historique

[modifier |modifier le code]
Ryan Dahl, créateur de Node.js.

Node.js a été créé par Ryan Dahl en 2009.Son développement et sa maintenance sont effectués par l'entreprise Joyent.Dahl a eu l'idée de créerNode.js après avoir observé labarre de progression d'un chargement de fichier sousFlickr : le navigateur ne savait pas quel pourcentage du fichier était chargé et devait adresser une requête au serveur web.Dahl voulait développer une méthode plus simple[12].Leserveur web Mongrel deRuby a été l'autre source d'inspiration pour Dahl[13].Dahl avait échoué dans plusieurs projets enC,Lua etHaskell, mais, quandlemoteur V8 fut diffusé, il commença à s'intéresser à JavaScript[14].Même si son idée d'origine était d'utiliser des entrées et sorties non bloquantes, il en reviendra un peu dans son module système car cela provoquait des problèmes de chargement de bibliothèques externes[15].

Il est à noter que Node.js estaujourd'hui[Quand ?] relativement facile à installer sur la plupart des distributionsGNU/Linux grand public[16].

Node.js est utilisé au cœur dusystème d'exploitationPalm webOS[17].

Forks

[modifier |modifier le code]

Fin 2014, en désaccord avec le rôle de l'entreprise Joyent, plusieurs des développeurs principaux de Node.js décident deforker celui-ci et créent alors io.js.

Un an plus tard, fin 2015, ils décident de fusionner à nouveau avec Node.js[18].

En, Node.js est à nouveau forké et plusieurs contributeurs créent alors ayo.js[19].

Exemple

[modifier |modifier le code]

Voici un exemple d'implémentation du programmeHello World sous forme de serveur web :

const{createServer}=require('http');//Creation du serveurconstserver=createServer((request,response)=>{response.writeHead(200,{'Content-Type':'text/plain'});response.end('Hello World\n');});server.listen(3000,()=>console.log('Adresse du serveur : http://localhost:3000'));

Cecode laisse transparaître deux notions importantes de Node.js.

Tout d'abord, la plateforme dispose d'un chargeur demodules via la fonctionrequire, dont l'un d'eux est la bibliothèque native HTTP permettant de démarrer un serveur HTTP pour recevoir des requêtes et générer des réponses.

Ensuite, elle permet de traiter du code JavaScriptasynchrone.

Frameworks pour Node.js

[modifier |modifier le code]
  • AdonisJS
  • AllcountJS
  • Catberry
  • Compound.js
  • Connect
  • DerbyJS
  • Devis
  • diet.js
  • Express
  • Fastify
  • Feathers
  • Flatiron
  • FoalTS
  • Fortune.js
  • Frisby
  • Geddy
  • Hapi.js
  • Ionic
  • Keystone
  • Knockout.js
  • Koa.js
  • kraken.js
  • Locomotive
  • Mean.js et Mean.io
  • Meteor
  • Mojito
  • Nest.js
  • Nodal
  • Partial.js
  • percolator
  • Raddish
  • RESTify
  • RhapsodyJS
  • SailsJS
  • seneca.js
  • Socket.IO
  • SocketStream
  • Strapi
  • ThinkJS
  • TotalJS
  • TowerJS
  • Trails

Outils pour Node.js

[modifier |modifier le code]
  • nCombo :framework pour lecloud
  • TestCafé[20] : outil d'automatisation de tests d'applications web.
  • Browserify : outil pour utiliser les modules Node.js dans le navigateur
  • Babel:Compilateur JavaScript open-source
  • Mongoose : couche depersistance pourMongoDB
  • Grunt : outil d'automatisation des tâches
  • PM2 : outil de surveillance et d'automatisation de tâches en cas de crash d'une application Node.js
  • memwatch-next : un paquet fourni par Node Package Manager (npm) pour la surveillance de l'utilisation demémoire. Utile pour détecter les fuites de mémoires lentes.
  • Gulp : outil d'automatisation des tâches (basé sur lesstreams)
  • Bower[21] : gestionnaire de paquet pour le web
  • Yeoman : générateur desite web utilisant Grunt et Bower
  • Unit.js : framework pour l'écriture destests unitaires
  • Mocha (en) : runner pour exécuter les tests unitaires
  • Jasmine (en) :tests unitaires

Certification Node.js

[modifier |modifier le code]

Depuis, la fondation Node.js a pour projet de créer une certification professionnelle, la NCD[22] (Nodejs Certified Developer).

Cettecertification est proposée en partenariat avec laFondation Linux et est actuellement disponible enaccès anticipé.

Utilisation courante

[modifier |modifier le code]

Node.js est utilisé pour faire des applicationsmultiplateforme avec des framework commeIonic pour les applications mobiles ou encoreElectron pour les applications de bureau.

Des géants, commeDiscord ou encoreSlack, utilisent ce système.

Node.js est aussi beaucoup utilisé pour faire des serveurs debot informatique ou bien des serveurs web.

CertainesAPIRest pour l'authentification sont faites avec Node.js.

Notes et références

[modifier |modifier le code]
  1. (en) nodejs, « Release 2026-01-13, Version 24.13.0 'Krypton' (LTS), @marco-ippolito · nodejs/node »(consulté le)
  2. (en) nodejs, « Release 2026-02-10, Version 25.6.1 (Current), @aduh95 »(consulté le)
  3. AdamGeitgey, « I-Tier: Dismantling the Monoliths »,Groupon,(consulté le)
  4. « SAP AppBuilder »,SAP,(consulté le)
  5. « You'll never believe how LinkedIn built its new iPad app »,VentureBeat,(consulté le)
  6. « Here's why you should be happy that Microsoft is embracing Node.js »,The Guardian,(consulté le)
  7. « WebMatrix - Front End Web Developers take note (ASP.NET, PHP, node.js and more) »(consulté le)
  8. « Yahoo! Announces Cocktails Shaken, Not Stirred »,(consulté le).
  9. « Why Walmart is using Node.js »,VentureBeat,(consulté le)
  10. « Clash of the Titans: Releasing the Kraken, NodeJS @paypal »,fluentconf.com,(consulté le)
  11. « All such companies and their products in which Node.js is used »(consulté le).
  12. (en) Amber Harris, « The Birth of Node: Where Did it Come From? Creator Ryan Dahl Shares the History », Devops Angle,(consulté le)
  13. (en) DioSynodinos, « Deep inside Node.js with Ryan Dahl », InfoQ,(consulté le)
  14. (en) Kevin McCarthy, « Node.js Interview: 4 Questions with Creator Ryan Dahl », Streetwise Media,(consulté le)
  15. (en) Oleg Podsechin, « Ryan Dahl Interview: Part 1 », DailyJS,(consulté le)
  16. (en-GB) « Node.js — Download Node.js® », surnodejs.org(consulté le)
  17. Guénaël Pépin, « Les nouveautés de webOS 2.0 se dévoilent », businessMOBILE.fr,
  18. (en) « Node.js », surNode.js(consulté le).
  19. « Ayojs/ayo », surGitHub(consulté le)
  20. Site deTestCafé
  21. Site deBower
  22. Page officielleNCD

Annexes

[modifier |modifier le code]

Sur les autres projets Wikimedia :

Articles connexes

[modifier |modifier le code]

Liens externes

[modifier |modifier le code]

v ·m
C
C++ &C#ZMWS : ZazouMiniWebServer
ASP.NETIIS
Java
JavaScript/TypeScript
Python
PikeCaudium
Ruby
ErlangYaws
v ·m
Analyse statique de programmes
Compilateur source à source
Concepts
Débogueur
Générateur de documentation
Éditeurs (comparaison (en))
Moteur
Framework
Technologie associée
Gestionnaire de paquets
Côté serveur
Test unitaire
Personnalité
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=Node.js&oldid=226804988 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2026 Movatter.jp