introduzione
Cos'è Node.js?
Node.js è sia open source che gratuito e viene utilizzato per vari scopi. Per citarne alcuni, Node.js è molto efficiente nel servire contenuti dinamici. Se desideri un modo rapido ed efficiente per avviare un blog, Node.js può semplificare il processo. Basato su JavaScript, Node.js può essere utilizzato dalla maggior parte degli sviluppatori Web che desiderano eseguire operazioni sul lato server senza dover imparare una lingua completamente nuova. Node.js è anche molto efficiente in termini di memoria, gestisce tutte le richieste in modo asincrono e il gestore pacchetti incluso ha accesso al repository più grande del mondo.
vantaggi
Node.js presenta numerosi vantaggi, come i seguenti:
- Supporta nativamente attività asincrone. Ad esempio, quando un utente invia una richiesta a uno script scritto Node.js, Node.js continua a essere disponibile per le nuove richieste durante l'elaborazione della richiesta corrente.
- Supporta la maggior parte delle distribuzioni Linux e ha un gran numero di pacchetti pre-scritti disponibili per l'uso.
- Ha la maggior parte delle funzioni di base di cui avrai bisogno. Ciò include la possibilità di modificare, spostare o eliminare i file; oltre a interagire con MySQL, MongoDB e una miriade di altre cose senza dover utilizzare il gestore pacchetti incluso.
- Utilizza il più grande repository di pacchetti in tutto il mondo:
npm
.
- Sintassi del codice simile a JavaScript. Node.js è essenzialmente JS lato server.
svantaggi
Sfortunatamente, però, Node.js ha la sua parte di svantaggi:
- Poiché è un linguaggio relativamente nuovo, rispetto a qualcosa come PHP, la sua base di codice viene aggiornata spesso. Ciò significa che le chiamate o i metodi utilizzati potrebbero non funzionare in una versione precedente o futura di Node.js.
- Occasionalmente Node.js potrebbe impiegare più tempo per scrivere il codice, poiché non può facilmente utilizzare altre librerie. ImageMagick, ad esempio, è una libreria popolare utilizzata su PHP che non è supportata con Node.js.
- A differenza di Java, le eccezioni sono difficili da implementare. Ciò significa che è quasi impossibile trovare errori nel codice se si dispone di un file JS lungo migliaia di righe.
Utilizzando Node.js
Prerequisiti
- Qualsiasi versione moderna di Ubuntu, CentOS o Debian installata. Questo articolo coprirà solo il processo di installazione di CentOS.
- Almeno 256 MB di RAM. Nota, questa cifra dipende dall'applicazione che eseguirai.
- Per questo tutorial, avrai anche bisogno di un editor di testo, come Vim o Nano.
Installazione del nodo
Aggiorna il tuo gestore pacchetti:
yum update -y
Installa Node.js:
yum install nodejs -y
Se viene richiesto di importare una chiave, immettere Yper continuare.
Assicurarsi che l'installazione abbia avuto esito positivo:
node -v
npm -v
Convenzioni di base sui tipi di file
Tutti i file Node.js devono terminare con .js
. Ad esempio, è possibile chiamare un semplice risolutore quadratico Quadratic.js
. Detto questo, puoi chiamarlo come preferisci purché sia soddisfatto il primo requisito.
L'API
I linguaggi di programmazione di solito ne hanno uno API
disponibile e Node.js non fa eccezione. Se si è perso o necessità di trovare la sintassi per una funzione (o metodo), controllare i documenti Node.JS .
NOTA: Come accennato in precedenza, Node.js ha una base di codice che viene aggiornata costantemente e, come tale, le funzioni qui potrebbero non funzionare più nelle versioni successive.
Creare i tuoi primi programmi
Ciao mondo!
In questa sezione, impareremo a conoscere il programma più semplice che puoi creare. Per iniziare, vai a /~
o /root
. Creare il tuo primo progetto è semplice come creare un file JS:
nano HelloWorld.js
Una volta entrato nel tuo editor di testo preferito, inserisci quanto segue:
// 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.
Esci e salva.
Ora avvia il tuo programma:
node HelloWorld.js
Vedrai il seguente output:
[root@test-server ~]# node HelloWorld.js
Hello, world!
Matematica semplice e variabili
In questa sezione, impareremo come eseguire operazioni matematiche di base. Per iniziare, vai di /root
nuovo nella tua directory e crea un file chiamato MathTest.js
:
nano MathTest.js
Incolla il seguente codice nel file:
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.
Salva ed esci.
Quando esegui il tuo MathTest.js
programma, vedrai quanto segue:
[root@test-server ~]# node MathTest.js
Hello, world!
a = 5, b = 10
a + b = 15
Avvio del nostro primo server web
In questa sezione, impareremo come avviare un server web Node.js. Per iniziare, crea un file chiamato WebTest.js
:
nano WebTest.js
Incolla il seguente codice:
// 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);
Dopo aver salvato il file, esegui il tuo nuovo programma:
[root@test-server ~]# node WebTest.js
Adesso visita http://(YOUR_SERVER_IP):8080
. Assicurati di avere il firewall configurato correttamente per consentire la richiesta.
Vedrai Request received!
sul tuo terminale e quanto segue nel tuo browser:
Hello, world! a + b = 15
NOTA: per chiudere (spegnere) WebTest.js
, utilizzare la seguente combinazione di tasti: CTRL+ C.
Ora che hai compreso alcune delle basi, la sezione seguente ti introdurrà all'utilizzo di moduli di terze parti, installati tramite npm
.
Installazione di un modulo di terze parti e utilizzo in un programma
In questa sezione, estenderemo il nostro primo "Ciao, mondo!" programma. Per iniziare, installeremo un pacchetto chiamato colo . Questo pacchetto ci consente di utilizzare i colori sul terminale.
Per iniziare, useremo npm
per installare il pacchetto:
npm i colo
Per riferimento, è possibile rimuovere il pacchetto con npm remove colo
Una volta completato il processo, avrai accesso al colo
pacchetto. Ora, una volta aperto HelloWorld.js
, aggiungi la seguente riga in alto:
var colour = require("colo");
Dove vedi console.log(...)
, incapsula "Ciao, mondo!" con parentesi. All'inizio delle parentesi, aggiungi colour.red.bold
:
console.log(colour.red.bold("Hello, world!"));
Il tuo codice finale sarà simile al seguente:
var colour = require("colo");
console.log(colour.red.bold("Hello, world!"));
Salva, esci ed esegui il tuo programma. L'output sarà esattamente lo stesso di prima, tranne "Ciao, mondo!" sarà ora rosso (e grassetto) nel tuo terminale.
Congratulazioni per aver completato tutti i programmi di base. Ciò dovrebbe fornirti le conoscenze per interpretare (almeno la maggior parte) del codice utilizzato in altri tutorial. Spero che non ti fermi qui: ci sono molte altre cose che puoi fare con Node.js!
Se scopri che Node.js non è la lingua per te, rimuoverlo è semplice come il seguente:
yum remove nodejs -y