introduction
Qu'est-ce que Node.js?
Node.js est à la fois open source et gratuit, et est utilisé à diverses fins. Pour n'en nommer que quelques-uns, Node.js est très efficace pour servir du contenu dynamique. Si vous voulez un moyen rapide et efficace de mettre en place un blog, Node.js peut simplifier le processus. Basé sur JavaScript, Node.js peut être utilisé par la plupart des développeurs Web qui souhaitent effectuer des opérations côté serveur sans avoir à apprendre une langue complètement nouvelle. Node.js est également très efficace en mémoire, gère toutes les demandes de manière asynchrone et le gestionnaire de packages inclus a accès au plus grand référentiel au monde.
Les avantages
Node.js présente plusieurs avantages, tels que les suivants:
- Prise en charge native des tâches asynchrones. Par exemple, lorsqu'un utilisateur envoie une demande à un script écrit par Node.js, Node.js continue d'être disponible pour les nouvelles demandes lors du traitement de la demande en cours.
- Prend en charge la plupart des distributions Linux et propose un grand nombre de packages pré-écrits.
- Possède la plupart des fonctions de base dont vous aurez besoin. Cela inclut la possibilité de modifier, déplacer ou supprimer des fichiers; ainsi qu'interagir avec MySQL, MongoDB et une pléthore d'autres choses sans avoir à utiliser le gestionnaire de paquets inclus.
- Utilise le plus grand dépôt de paquets dans le monde:
npm
.
- Syntaxe de code similaire à JavaScript. Node.js est essentiellement JS côté serveur.
Désavantages
Malheureusement, Node.js a sa part d'inconvénients:
- Comme il s'agit d'un langage relativement nouveau, par rapport à quelque chose comme PHP, sa base de code est souvent mise à jour. Cela signifie que les appels ou les méthodes que vous utilisez peuvent ne pas fonctionner dans une version précédente ou future de Node.js.
- Node.js peut parfois prendre plus de temps pour écrire du code, car il ne peut pas facilement utiliser d'autres bibliothèques. ImageMagick, par exemple, est une bibliothèque populaire utilisée sur PHP qui n'est pas prise en charge avec Node.js.
- Contrairement à Java, les exceptions sont difficiles à implémenter. Cela signifie qu'il est presque impossible de trouver des erreurs dans votre code si vous disposez d'un fichier JS de plusieurs milliers de lignes.
Utilisation de Node.js
Conditions préalables
- Toute version moderne d'Ubuntu, CentOS ou Debian installée. Cet article ne couvrira que le processus d'installation de CentOS.
- Un minimum de 256 Mo de RAM. Remarque, ce chiffre dépend de l'application que vous exécuterez.
- Pour ce didacticiel, vous aurez également besoin d'un éditeur de texte, tel que Vim ou Nano.
Installation du nœud
Mettez à jour votre gestionnaire de packages:
yum update -y
Installez Node.js:
yum install nodejs -y
Si vous êtes invité à importer une clé, entrez Ypour continuer.
Assurez-vous que l'installation a réussi:
node -v
npm -v
Conventions de type de fichier de base
Tous les fichiers Node.js doivent se terminer par .js
. Par exemple, un simple solveur quadratique peut être appelé Quadratic.js
. Cela dit, vous pouvez l'appeler comme vous le souhaitez tant que la première exigence est remplie.
L'API
Les langages de programmation ont généralement un API
disponible, et Node.js ne fait pas exception. Si vous êtes perdu ou besoin de trouver la syntaxe d'une fonction (ou méthode), consultez les documents Node.js .
REMARQUE: comme mentionné précédemment, Node.js a une base de code qui est constamment mise à jour et en tant que telle, les fonctions peuvent ne plus fonctionner dans les versions ultérieures.
Créer vos premiers programmes
Bonjour le monde!
Dans cette section, nous découvrirons le programme le plus élémentaire que vous puissiez créer. Pour commencer, dirigez-vous vers /~
ou /root
. La création de votre premier projet est aussi simple que la création d'un fichier JS:
nano HelloWorld.js
Une fois que vous êtes dans votre éditeur de texte préféré, entrez ce qui suit:
// For reference, comments are made using '//' added before or after a line. Comments are ignored by the Node.js interpreter.
console.log("Hello, world!"); // console.log() simply outputs text to the terminal.
Quittez et enregistrez.
Maintenant, lancez votre programme:
node HelloWorld.js
Vous verrez la sortie suivante:
[root@test-server ~]# node HelloWorld.js
Hello, world!
Mathématiques et variables simples
Dans cette section, nous allons apprendre à effectuer des opérations mathématiques de base. Pour commencer, dirigez-vous à /root
nouveau vers votre répertoire et créez un fichier appelé MathTest.js
:
nano MathTest.js
Collez le code suivant dans le fichier:
var a = 5; // Variables are declared using 'var variableName = value'. The value can be a string, integer, boolean value (ie. true/false) or an object.
var b = 10;
var c = "Hello, world!";
console.log(c); // This line will output the contents of variable c.
console.log("a = " + a + ", b = " + b); // This line prints out the respective values for a & b.
console.log("a + b = " + (a + b)); // This line prints out the result of (a + b) or (5 + 10). The result should be 15.
Sauvegarder et quitter.
Lorsque vous exécutez votre MathTest.js
programme, vous verrez ce qui suit:
[root@test-server ~]# node MathTest.js
Hello, world!
a = 5, b = 10
a + b = 15
Démarrage de notre premier serveur Web
Dans cette section, nous allons apprendre à démarrer un serveur Web Node.js. Pour commencer, créez un fichier appelé WebTest.js
:
nano WebTest.js
Collez le code suivant:
// This line includes the HTTP module. Having it included allows us to use it's methods and functions to start a working webserver.
var http = require("http");
var a = 5, b = 10;
http.createServer(function (request, response) {
// This will simply output "Request received!" to your terminal when you visit your page.
console.log("Request received!");
// This line tells your browser that it should be expecting HTML content to be returned.
response.writeHead(200, {'Content-Type': 'text/html'});
// The following line adds "Hello, world! a + b = 15" to the body. The <i></i> tags will italicize the text.
response.write("<i>Hello, world! a + b = " + (a + b) + "</i>");
// Finally, we'll tell the browser that we're done sending data with 'response.end()' below.
response.end();
}).listen(8080);
Une fois que vous avez enregistré le fichier, exécutez votre nouveau programme:
[root@test-server ~]# node WebTest.js
Maintenant, visitez http://(YOUR_SERVER_IP):8080
. Assurez-vous que votre pare-feu est correctement configuré pour autoriser la demande.
Vous verrez Request received!
sur votre terminal et les éléments suivants dans votre navigateur:
Hello, world! a + b = 15
REMARQUE: pour fermer (arrêter) WebTest.js
, utilisez la combinaison de touches suivante: CTRL+ C.
Maintenant que vous comprenez certaines des bases, la section suivante vous présentera l'utilisation de modules tiers, installés via npm
.
Installation d'un module tiers et utilisation dans un programme
Dans cette section, nous allons étendre notre premier "Bonjour, monde!" programme. Pour commencer, nous allons installer un package appelé colo . Ce package nous permet d'utiliser des couleurs sur le terminal.
Pour commencer, nous allons utiliser npm
pour installer le package:
npm i colo
Pour référence, vous pouvez supprimer le package avec npm remove colo
Une fois le processus terminé, vous aurez accès au colo
package. Maintenant, une fois que vous avez ouvert HelloWorld.js
, ajoutez la ligne suivante en haut:
var colour = require("colo");
Où vous voyez console.log(...)
, encapsulez "Bonjour, monde!" avec crochets. Au début des crochets, ajoutez colour.red.bold
:
console.log(colour.red.bold("Hello, world!"));
Votre code final ressemblera à ceci:
var colour = require("colo");
console.log(colour.red.bold("Hello, world!"));
Enregistrez, quittez et exécutez votre programme. La sortie sera exactement la même qu'avant, sauf "Bonjour, monde!" sera désormais en rouge (et en gras) dans votre terminal.
Félicitations pour avoir terminé tous les programmes de base. Cela devrait vous fournir les connaissances nécessaires pour interpréter (au moins la plupart) du code utilisé dans d'autres didacticiels. Si tout va bien, vous ne vous arrêtez pas ici - il y a beaucoup d'autres choses que vous pouvez faire avec Node.js!
Si vous trouvez que Node.js n'est pas la langue pour vous, sa suppression est aussi simple que la suivante:
yum remove nodejs -y