Una guia ràpida per a Node.js el 2019

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.

Observacions finals

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

Deixa un comentari

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació