• Programmazione Android
  • CORSI ONLINE
  • Web Agency

Logo

Corsi di programmazione web e mobile online
Navigation
  • Home
  • CORSI ONLINE
  • Tutorial Pratici
  • GUIDE COMPLETE
    • Corso completo di C
    • Corso videogame con Cocos2d
    • Programmazione Cocoa Touch
  • Sezioni
    • Libri e manuali
    • Tips & Tricks
    • Risorse utili
    • Strumenti di Sviluppo
    • Materiale OpenSource
    • Framework
    • Guide Teoriche
    • Guide varie
    • Grafica e Design
    • iPad
    • News
    • Video Tutorial
    • Windows Phone
  • Pubblicità
  • About
    • Chi siamo
    • Pubblicazioni
    • Collabora
    • Sostieni devAPP

Introduzione a Node.js

By Giuseppe Maggi | on 23 Marzo 2016 | 0 Comment
Senza categoria

Node.js rappresenta già una pietra miliare nella storia dell’informatica. Propone un modo per poter realizzare applicazioni lato server in Javascript. A chi è legato al concetto classico di web la cosa suonerà un pò strana. Javascript infatti è sempre stato visto come il linguaggio che ha dato il soffio di vita alle pagine statiche HTML, immobili nella loro struttura. Tutto è rimasto così finchè Google non ha creato il motore V8 che processava Javascript con lo scopo di ottimizzare il funzionamento del browser Chrome. Il progetto è diventato così autonomo nel tempo che si è dimostrato in grado di funzionare indipendentemente, senza un browser collegato, permettendo la realizzazione di applicazioni stand alone.

Node.js si fonda su V8 e una volta installato permette di scrivere righe di codice Javascript ed attivarle da riga di comando. Questa piattaforma è diventata un modo molto comune e performante per creare applicazioni web o servizi on line che forniscano accesso a database, attivino funzionalità o svolgano elaborazioni offrendo il tutto tramite comode API per l’interazione con un client di qualunque genere.

Questo articolo si pone lo scopo di offrire una panoramica introduttiva a Node.js e di essere solo il primo di una serie che permetterà di creare un proprio set di API.

Installazione

Node.js è un progetto multipiattaforma quindi dalla pagina ufficiale del sito è possibile scaricare l’installer per Windows o Mac nonchè il codice sorgente. Sono anche disponibili pacchetti di eseguibili per altre piattaforme mentre tutte le principali distribuzioni Linux ne permettono l’installazione tramite repository ufficiale.

Nella maggior parte dei metodi, l’installazione non dovrebbe creare alcun problema e, una volta conclusa, Node.js sarà disponibile e attivabile tramite il comando node.

Per verificare la corretta configurazione dell’ambiente, si potrà creare un primo file che chiameremo primo.js ed inserirvi all’interno:

/* Iniziamo con Node.js. Facciamo un Hello World */
console.log("Ciao Mondo!")

A questo punto da riga di comando si potrà inviare:

node primo.js

In output, vedremo apparire la stringa “Ciao Mondo!” il che dimostrerà due cose: la nostra piattaforma è pronta al lavoro e siamo riusciti a mandare in esecuzione  il nostro primo programma con Node.js.

Con un pò di esperienza in Javascript, si vede che le due righe scritte non sono altro che un commento ed un’invocazione alla console, come faremmo in Chrome.

Interagire in HTTP

Visto che, come abbiamo detto, ci interessa usare Node.js per l’interazione in Rete vediamo un altro classico esempio che ci proietta velocemente in un contesto “web”:

var http = require("http") ;

function getResponse(request, response) {
      response.writeHead(200, {"Content-Type": "text/plain"}) ;
      response.write("Rispondo alla richiesta");
      response.end() ;
} 
http.createServer(getResponse).listen(8100) ;
console.log("Server in esecuzione... Inviare richieste") ;

Alla prima riga, importiamo il modulo http che consentirà il trattamento di questo protocollo di comunicazione. Node.js ha un’anima profondamente modulare quindi ci abitueremo presto a questo approccio, per così dire, di integrazione.

Il server vero e proprio viene avviato con il metodo createServer che riceverà come informazioni operative la porta TCP di esecuzione – 8100 in questo caso – e la funzione che rappresenterà le operazioni svolte ad ogni richiesta client, getResponse.

Il protocollo HTTP, nel suo funzionamento più intimo, è piuttosto semplice. Si basa su un modello richiesta/risposta, entrambe strutturate su attributi divisi in intestazioni (headers) e corpo. Il metodo getResponse prende in input due oggetti, rappresentanti rispettivamente, per l’appunto, la richiesta e la risposta: request e response.

Al moment,o non leggeremo ancora il contenuto della richiesta ma ci accontenteremo di produrre una risposta. In getResponse invocheremo il metodo writeHead per produrre intestazioni e  il metodo write per fornire contenuti. Invocando infine il metodo end la risposta preparata viene fornita al client.

Una volta scritto, il programma che abbiamo registrato nel file primo_server.js potrà essere mandato in esecuzione:

node primo_server.js

potremo provarlo invocando dal browser l’indirizzo http://localhost:8100.

Nell’output vedremo produrre la stringa “Rispondo alla richiesta” inviata tramite i comandi write, segno comunque che il metodo getResponse è stato attivato.

NPM

Una funzionalità molto utile che ormai viene sempre distribuita con Node.js è npm, un package manager che permette di scaricare pacchetti da integrare nella piattaforma e poter, successivamente, sfruttare nell’applicazione dopo aver invocato la direttiva require.

Per installare un pacchetto via npm è sufficiente il seguente:

npm install <nome pacchetto>

dove dovremo specificare il nome del pacchetto cui siamo interessati.

In alternativa a install, a seconda dei casi, si possono utilizzare:

  • uninstall per la rimozione del modulo;
  • search per controllare che un modulo esista;
  • update per provvedere all’aggiornamento del modulo.

Tutte queste operazioni verranno svolte da npm attingendo ai pacchetti collocati nei suoi repository remoti.

Conclusioni

Quello che si è visto in questo tutorial è solo un approccio rapido a Node.js. Il discorso ovviamente verrà ripreso e mirerà ad espandere sempre più le nostre funzionalità lato server implementate fino a creare un servizio completo basato su API.

Share this story:
  • tweet

Tags: googlejavascriptnode.jsTutorial Praticiweb

Recent Posts

  • Parte il percorso programmatori iOS in Swift su devACADEMY.it

    20 Dicembre 2017 - 0 Comment
  • Android, crittografare dati velocemente con Encryption

    24 Settembre 2018 - 0 Comment
  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment

Related Posts

  • Android: configurare emulatore con Play Store

    18 Giugno 2018 - 0 Comment
  • Iniziamo a programmare con micro:bit

    1 Marzo 2018 - 0 Comment
  • micro:bit, un microntroller per imparare a programmare già dai 7 anni

    28 Febbraio 2018 - 0 Comment

Author Description

No Responses to “Introduzione a Node.js”

Leave a Reply

Your email address will not be published. Required fields are marked *


*
*

Corso online di programmazione android e java

SEZIONI

  • Android
  • Comunicazioni
  • Contest
  • Corsi ed Eventi
  • Corso completo di C
  • Corso programmazione videogiochi
  • Framework
  • Grafica e Design
  • Guida rapida alla programmazione Cocoa Touch
  • Guide Teoriche
  • Guide varie
  • iPad
  • Le nostre applicazioni
  • Libri e manuali
  • Materiale OpenSource
  • News
  • Pillole di C++
  • Progetti completi
  • Risorse utili
  • Strumenti di Sviluppo
  • Swift
  • Tips & Tricks
  • Tutorial Pratici
  • Video Tutorial
  • Windows Phone

Siti Amici

  • Adrirobot
  • Allmobileworld
  • Apple Notizie
  • Apple Tribù
  • Avvocato360
  • Blog informatico 360°
  • bubi devs
  • fotogriPhone
  • GiovaTech
  • iApp-Mac
  • iOS Developer Program
  • iPodMania
  • MelaRumors
  • Meritocracy
  • SoloTablet
  • TecnoUser
  • Privacy & Cookie Policy
©2009-2018 devAPP - All Rights Reserved | Contattaci
devAPP.it è un progetto di DEVAPP S.R.L. - Web & Mobile Agency di Torino
Str. Volpiano, 54 - 10040 Leini (TO) - C.F. e P.IVA 11263180017 - REA TO1199665 - Cap. Soc. € 10.000,00 i.v.

devACADEMY.it

Vuoi imparare a programmare?

Iscriviti e accedi a TUTTI i corsi con un’unica iscrizione.
Oltre 70 corsi e migliaia di videolezioni online e in italiano a tua disposizione.

ISCRIVITI SUBITO