Introducció
Utilitzant Node.js
Creant els teus primers programes
Observacions finals
Introducció
Què és Node.js?
Node.js és de codi obert i gratuït, i s'utilitza per a diversos propòsits. Per citar-ne alguns, Node.js és molt eficient per oferir contingut dinàmic. Si voleu una manera ràpida i eficient de posar en funcionament un bloc, Node.js pot simplificar el procés. Basat en JavaScript, Node.js pot ser utilitzat per la majoria de desenvolupadors web que vulguin realitzar operacions al costat del servidor sense haver d'aprendre un llenguatge completament nou. Node.js també és molt eficient amb la memòria, gestiona totes les sol·licituds de manera asíncrona i el gestor de paquets inclòs té accés al dipòsit més gran del món.
Avantatges
Node.js té diversos avantatges, com ara els següents:
- Admet de forma nativa tasques asíncrones. Per exemple, quan un usuari fa una sol·licitud a un script escrit per Node.js, Node.js continua disponible per a sol·licituds noves mentre processa la sol·licitud actual.
- Admet la majoria de distribucions de Linux i té un gran nombre de paquets escrits prèviament disponibles per utilitzar-los.
- Té la majoria de les funcions bàsiques que necessitareu incorporades. Això inclou la possibilitat d'editar, moure o suprimir fitxers; així com interactuar amb MySQL, MongoDB i una gran quantitat d'altres coses sense haver d'utilitzar el gestor de paquets inclòs.
- Utilitza el repositori de paquets més gran del món:
npm.
- Sintaxi de codi similar a JavaScript. Node.js és essencialment JS del servidor.
Desavantatges
Malauradament, però, Node.js té la seva part de desavantatges:
- Com que és un llenguatge relativament nou, en comparació amb alguna cosa com PHP, el seu codi base s'actualitza sovint. Això vol dir que és possible que les trucades o els mètodes que utilitzeu no funcionin en una versió anterior o futura de Node.js.
- Node.js pot trigar de vegades més a escriure codi, ja que no pot utilitzar fàcilment altres biblioteques. ImageMagick, per exemple, és una biblioteca popular utilitzada en PHP que no és compatible amb Node.js.
- A diferència de Java, les excepcions són difícils d'implementar. Això vol dir que és gairebé impossible trobar errors al vostre codi si teniu un fitxer JS de milers de línies.
Utilitzant Node.js
Requisits previs
- Qualsevol versió moderna d'Ubuntu, CentOS o Debian instal·lada. Aquest article només tractarà el procés d'instal·lació de CentOS.
- Un mínim de 256 MB de RAM. Tingueu en compte que aquesta xifra depèn de l'aplicació que esteu executant.
- Per a aquest tutorial, també necessitareu un editor de text, com ara Vim o Nano.
Instal·lació de Node
Actualitzeu el vostre gestor de paquets:
yum update -y
Instal·leu Node.js:
yum install nodejs -y
Si se us demana que importeu una clau, entreu Yper continuar.
Assegureu-vos que la instal·lació va ser correcta:
node -v
npm -v
Convencions bàsiques de tipus de fitxer
Tots els fitxers Node.js han d' acabar amb .js. Per exemple, un solucionador quadràtic simple es pot anomenar Quadratic.js. Dit això, podeu anomenar-lo com vulgueu sempre que es compleixi el primer requisit.
L'API
Els llenguatges de programació solen tenir un APIdisponible, i Node.js no és una excepció. Si us heu perdut o necessiteu trobar la sintaxi d'una funció (o mètode), consulteu els documents de Node.js .
NOTA: Com s'ha esmentat anteriorment, Node.js té una base de codi que s'actualitza constantment i, com a tal, és possible que les funcions aquí ja no funcionin en versions posteriors.
Creant els teus primers programes
Hola món!
En aquesta secció, coneixerem el programa més bàsic que podeu crear. Per començar, aneu a /~o /root. Crear el vostre primer projecte és tan senzill com crear un fitxer JS:
nano HelloWorld.js
Un cop estigueu dins del vostre editor de text preferit, introduïu el següent:
// 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.
Sortir i guardar.
Ara, inicieu el vostre programa:
node HelloWorld.js
Veureu la següent sortida:
[root@test-server ~]# node HelloWorld.js
Hello, world!
Matemàtiques simples i variables
En aquesta secció, aprendrem a realitzar operacions matemàtiques bàsiques. Per començar, /roottorneu a dirigir-vos al vostre directori i creeu un fitxer anomenat MathTest.js:
nano MathTest.js
Enganxeu el codi següent al fitxer:
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.
Guardar i sortir.
Quan executeu el vostre MathTest.jsprograma, veureu el següent:
[root@test-server ~]# node MathTest.js
Hello, world!
a = 5, b = 10
a + b = 15
Inici del nostre primer servidor web
En aquesta secció, aprendrem a iniciar un servidor web Node.js. Per començar, creeu un fitxer anomenat WebTest.js:
nano WebTest.js
Enganxeu el codi següent:
// 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);
Un cop hàgiu desat el fitxer, executeu el vostre nou programa:
[root@test-server ~]# node WebTest.js
Ara, visita http://(YOUR_SERVER_IP):8080. Assegureu-vos de tenir el vostre tallafoc configurat correctament per permetre la sol·licitud.
Veureu Request received!al vostre terminal i el següent al vostre navegador:
Hello, world! a + b = 15
NOTA: Per tancar (apagar) WebTest.js, utilitzeu la següent combinació de tecles: CTRL+ C.
Ara que enteneu alguns dels conceptes bàsics, la secció següent us introduirà a utilitzar mòduls de tercers, instal·lats mitjançant npm.
Instal·lar un mòdul de tercers i utilitzar-lo en un programa
En aquesta secció, estendrem el nostre primer "Hola, món!" programa. Per començar, instal·larem un paquet anomenat colo . Aquest paquet ens permet utilitzar colors al terminal.
Per començar, farem servir npmper instal·lar el paquet:
npm i colo
Com a referència, podeu treure el paquet amb npm remove colo
Un cop finalitzat el procés, tindreu accés al colopaquet. Ara, un cop hàgiu obert HelloWorld.js, afegiu la línia següent a la part superior:
var colour = require("colo");
On ho veieu console.log(...), encapsuleu "Hola, món!" amb parèntesis. A l'inici dels parèntesis, afegiu colour.red.bold:
console.log(colour.red.bold("Hello, world!"));
El vostre codi final serà com el següent:
var colour = require("colo");
console.log(colour.red.bold("Hello, world!"));
Deseu, sortiu i executeu el vostre programa. La sortida serà exactament la mateixa que abans, excepte "Hola, món!" ara serà vermell (i negreta) al vostre terminal.
Felicitats per completar tots els programes bàsics. Això us hauria de proporcionar els coneixements per interpretar (almenys la majoria) del codi utilitzat en altres tutorials. Amb sort, no us atureu aquí: hi ha moltes altres coses que podeu fer amb Node.js!
Si trobeu que Node.js no és l'idioma per a vosaltres, eliminar-lo és tan senzill com el següent:
yum remove nodejs -y