NodeJS

Qu'est-ce que NodeJS?

Qu'est-ce que NodeJS?

Dans ce tutoriel, nous allons commencer avec Node.js. Découvrez certaines de ses fonctionnalités les plus populaires et essaierons de motiver les lecteurs à adopter cette merveilleuse technologie pour leurs futurs projets. Au préalable, il vous suffit d'avoir une connaissance passagère de JavaScript et des concepts de programmation génériques, tels que les variables, les types de données et les fonctions.

JavaScript a une histoire étrange. Il a commencé comme un langage de script léger pour les navigateurs Web et a été traité plus comme un « jouet » que comme un langage de programmation sérieux. Mais il a depuis longtemps dépassé son humble début.

Les gens ont commencé à étendre ses capacités lorsque Google a ouvert l'interpréteur JavaScript de Chrome - Le moteur V8. Nœud.js prend ce moteur JavaScript et l'étend pour qu'il fonctionne en dehors du domaine du navigateur. Nœud.js lie JavaScript avec l'API de votre système d'exploitation afin qu'il puisse s'exécuter nativement sur le serveur (ou dans le cas d'un développeur, sur son bureau). Oui, cela signifie que vous pouvez implémenter des applications côté serveur, des applications de bureau et des mécanismes principaux en apprenant un seul langage - JavaScript.

Autrement dit, vous pouvez écrire .js fichiers qui contiennent des programmes écrits en syntaxe JavaScript qui seront interprétés par Node.js de la même manière que .py les fichiers avec une syntaxe valide sont interprétés/exécutés par l'interpréteur python.

Il n'y a pas que la simple connaissance de la langue, cependant, Node.js a des modules et des concepts inconnus qui nécessiteraient de la patience dans un cycle sans fin d'apprentissage de nouveaux concepts. Il possède son propre gestionnaire de packages (npm), son gestionnaire de versions (nvm) et le plus grand registre de packages au monde. Rassurez-vous, la difficulté initiale vous facilitera grandement la vie sur le long terme.

Installation

Actuellement, il existe deux options pour Node.js que vous voudrez peut-être considérer.

Nous resterons avec la version LTS. Le téléchargement de Node à partir du site officiel de votre système d'exploitation installerait également le gestionnaire de packages de nœud (npm). Il est difficile de parler de Node.js sans entrer dans npm. Nous reviendrons sur le gestionnaire de paquets plus tard. Si vous utilisez Ubuntu ou toute autre distribution Debian, utilisez simplement :

$ sudo apt installer nodejs

Pour tous les binaires et le code source, visitez la page de téléchargement officielle.

C'est tout avec l'installation, il est temps de dire, "Bonjour, le monde!"

Bonjour le monde! Et créer un serveur

Comme promis, nous allons créer un Bonjour.js fichier et exécutez-le en utilisant Node. Dans un fichier texte brut, appelé Bonjour.js, on écrit la ligne suivante :

console.log ("Bonjour, Monde!" );

Enregistrez maintenant le fichier et ouvrez un terminal dans le même répertoire que ce fichier et exécutez la commande suivante :

$node bonjour.js
#Ou vous pouvez courir
$node bonjour

Cela vous donnera la sortie souhaitée de "Bonjour le monde". Tout comme JavaScript vanille. Mais sûrement, nous pouvons faire mieux…

Contrairement aux applications basées sur PHP qui nécessitent Apache ou Nginx ou un autre programme de serveur Web pour s'exécuter sur le dessus, dans le nœud, nous écrivons nos propres routes http, configurons les ports et les noms d'hôte et traitons les requêtes HTTP pour donner les réponses appropriées.

Cela semble beaucoup de travail, mais ce n'est qu'un premier obstacle dans la courbe d'apprentissage, et une fois que vous aurez compris les choses, vous serez en mesure de comprendre les applications Web plus en profondeur que jamais. Créons un serveur Web qui écoute sur le port 3000 sur localhost et renvoie un fichier texte en réponse. Créer un fichier application.js avec le contenu suivant :

const http = require('http');
const nom d'hôte = '127.0.0.1';
port const = 3000 ;
serveur const = http.createServer((req, res) =>
res.code d'état = 200 ;
res.setHeader('Content-Type', 'text/plain');
res.end('Bonjour tout le monde\n');
);
serveur.écouter(port, nom d'hôte, () =>
console.log('Serveur s'exécutant sur http://$hostname:$port/');
);

Avant d'entrer dans les détails du code, enregistrez ce fichier et ouvrez un terminal dans le même répertoire que le fichier, puis exécutez :

application de nœud $

Cela exécutera le contenu de application.js fichier et vous obtiendrez une sortie comme suit :

Ouvrez un navigateur Web et visitez http://localhost:3000/ ou http://127.0.0.1:3000/ pour voir un simple texte Hello World sur la fenêtre de votre navigateur.

Alors qu'est-ce qu'on vient de faire? Eh bien, si vous êtes familier avec JavaScript, vous pouvez probablement en comprendre certains…

le Première ligne importe le module http, qui est un module intégré fourni avec Node, et il nous aide à écouter les requêtes sur les sockets Web, à traiter les requêtes http et à donner les réponses appropriées.

le deuxième et troisième ligne définit le nom d'hôte à '127.0.0.1' et Port  à 3000. Cela signifie que nous pouvons continuer à réutiliser la variable nom d'hôte et Port, au lieu de taper l'intégralité de l'adresse IP. Plus tard, lorsque vous le déployez réellement sur un serveur, vous le remplacerez par l'adresse IP du serveur et un numéro de port comme 80 ou 443 s'il s'agit d'un serveur Web. Le mot-clé const garantit que la variable ne peut pas être modifiée ailleurs dans le programme.

le lignes quatre à huit  crée un objet serveur qui prend la requête comme req et donne une réponse comme res.

La réponse a un attribut statusCode, le res.code d'état qui est défini sur 200 que le client interprète comme le statut « OK ». Les codes d'erreur sont 400 et 500, par exemple, l'erreur 404 est le code de la ressource introuvable. De même, l'attribut setHeader est défini sur 'text/plain', ce qui signifie que le client recevra du texte brut. Vous pouvez définir ceci sur HTML et votre navigateur affichera tout code HTML valide avec lequel le serveur répondra. Et le finir l'attribut est simplement le texte que nous voulons retourner. Au lieu d'avoir une chaîne ici, les applications du monde réel auront un fichier HTML statique ou un autre .js fichier pour le navigateur client, ce qui constituerait une réponse beaucoup plus utile.

Finalement, le trois dernières lignes démarre le serveur et imprime un message indiquant qu'il est actif sur un nom d'hôte et un numéro de port spécifiques définis par const déclarations, initialement. Chaque fois qu'une nouvelle demande arrive au nom d'hôte spécifié: le serveur de combinaison de ports donne des réponses avec réponse objet.

Ce que cela implique?

Vous n'avez pas besoin de comprendre le code ci-dessus dans son intégralité pour connaître les implications. Nous avons déjà JavaScript sur le front-end grâce à des frameworks géniaux comme Angular et React. Parallèlement à cela, nous avons également des fonctionnalités back-end intégrées dans le nœud.philosophie js.

Les frameworks Web comme Express.js peut vous aider à écrire une application encore plus complexe sur Node.js. La récupération de données à partir de la base de données, la création d'API et l'interface utilisateur frontale peuvent tous être écrits à l'aide d'un seul langage.

La puissance du V8

Bien qu'il s'agisse d'une seule langue, il y a encore beaucoup à apprendre. Différents frameworks et modules ont des fonctionnalités différentes. Il existe une tonne de versions à suivre. Y a-t-il donc un autre avantage à utiliser le nœud.écosystème js.

L'un des arguments les plus importants à l'appui est que le moteur V8 a un excellent support pour les E/S asynchrones et non bloquantes. Ce qui signifie essentiellement qu'un seul processus s'exécutant sur la mémoire de votre système peut gérer plusieurs demandes entrantes. la première demande n'est pas encore terminée.

De plus, un seul processus s'exécutant dans votre mémoire est chargé de traiter toutes les demandes entrantes. Contrairement aux applications basées sur PHP qui génèrent un nouveau processus pour chaque nouvelle demande entrante.

Espérons que cette introduction a été suffisante pour vous motiver à propos de Node.js. Faites savoir si vous souhaitez des tutoriels plus approfondis sur des sujets similaires en nous suivant sur Twitter, Facebook et YouTube.

Meilleurs jeux à jouer avec le suivi des mains
Oculus Quest a récemment introduit l'idée géniale du suivi manuel sans contrôleurs. Avec un nombre toujours croissant de jeux et d'activités qui exécu...
Comment afficher la superposition OSD dans les applications et jeux Linux en plein écran
Jouer à des jeux en plein écran ou utiliser des applications en mode plein écran sans distraction peut vous couper des informations système pertinente...
Top 5 des cartes de capture de jeu
Nous avons tous vu et aimé des gameplays en streaming sur YouTube. PewDiePie, Jakesepticye et Markiplier ne sont que quelques-uns des meilleurs joueur...