Linguaggi Web

blog life

Nel mondo delle tecnologie web capita spesso di trovarsi disorientati. Capire il funzionamento del web nelle sue basi è essenziale per comprenderne comportamenti più complessi e soprattutto per poter lavorare con esso, anche se nel modo più semplice.

Iniziamo con un pò di storia… il web, come lo conosciamo noi oggi, esiste da pochissimo, 15 anni circa. I primi browser per la rete mondiale, Internet, nacquero nei primi anni ’90 con l’intento di mostrare ai pochi utilizzatori le pochissime pagine disponibili, per lo più appartenenti ad accademie ed università. Per avere maggiori dettagli sulla storia di internet, può essere d’aiuto leggere questo articolo di Wikipedia.

Il browser, oggi è conosciuto maggiormente come quel programma che permette a noi utenti di poter accedere ai dati contenuti in internet. In realtà il browser altro non è che un interprete di un particolare linguaggio (oggi di più linguaggi), che è quello con cui vengono normalmente programmate le pagine web… l’html. Nel corso del tempo i vari browser hanno migliorato la propria compatibilità verso tutti gli aspetti di questo linguaggio (a parte Internet Explorer che è un discorso a parte) e ancora oggi si cerca di migliorare questa compatibilità. Dalla necessità di realizzare una modalità standard per la realizzazione dei siti web, è nato addirittura un consorzio, il W3C, conosciuto anche come World Wide Web Consortium, che si occupa appunto di standardizzare tutto ciò che riguarda la programmazione dei siti web e non solo. In questa pagina sono ampiamente spiegati quali sono gli obiettivi del consorzio.

Tornando ora al problema iniziale, cerchiamo di mettere in luce come funzionano le pagine web. Probabilmente la maggior parte delle persone che legge questo articolo è connesso ad internet tramite un modem xDSL, una piccola parte con un modem 56k e poche altre tramite altre tecnologie (ISDN ecc). Dal momento che voi digitate l’URL (l’indirizzo della pagina web) nella pagina del vostro browser, questo valore viene convertito in una serie di numeri, chiamato indirizzo IP, che rappresenta univocamente quel particolare sito su tutta Internet, come spiegato in questa immagine:

ip

Al momento della richiesta quindi, al particolare indirizzo risponderà un determinato server (colui che appunto “serve” la richiesta all’utente), che spedirà al nostro browser la pagina html che abbiamo richiesto.

Allora come funzionano le pagine web dinamiche?

Esistono numerosi linguaggi che ci permettono di realizzare una interazione con il sito web su cui stiamo navigando. Molti di voi si saranno accorti della presenza di javascript all’interno delle pagine, o chiunque di voi utilizzi GMail sa bene quanto sia utilissimo il fatto di avere una pagina costantemente aggiornata, invece che dovere cliccare continuamente su “Posta arrivata” per ricevere nuove mail. Tutto questo viene realizzato con particolari linguaggi e nel caso di GMail con AJAX, conosciuto meglio come XmlHttpRequest, che altro non è che una particolare estensione di Javascript.

Javascript, VBScript e altri sono meglio conosciuti come linguaggi di scripting, ovvero quei linguaggi che non creano un vero e proprio programma, ma semplicemente permettono di estendere le capacità native di un determinato programma preesistente ma in grado di leggere, “comprendere” ed eseguire questi particolari codici. Questi codici quindi vengono eseguiti dal browser dell’utente, sul computer dell’utente.

Esistono invece linguaggi appositamente scritti per essere eseguiti dal server per generare pagine personalizzate per ogni singolo visitatore. Creare infatti una pagina per ognuno sarebbe oltre che un lavoro astronomico, assolutamente poco preciso e poco performante. Questi linguaggi sono nati per questo ed i più comuni sono ASP e PHP (lasciando una parentesi per ASP.NET, che sta via via prendendo sempre più piede nelle tecnologie web).

Questi linguaggi, chiamati appunto linguaggi lato server, funzionano in un modo molto semplice: essendo gestiti dal server possono interagire con oggetti come database e filesystem di quest’ultimo, ovvero possono memorizzare ed immagazzinare opzioni personalizzate, i dati degli utenti e informazioni di qualsiasi tipo e gestirle in modo da permettere servizi come YouTube, i vari client di posta on-line, la semplice pagina iniziale di iGoogle e molti altri. In base alle preferenze del visitatore il server genera un particolare pagina html su misura, la invia al browser dell’utente e questo interagisce solo ed unicamente con quest’ultimo. In questa figura vi mostro uno schema semplificato del funzionamento:

linguaggi web

Infine, tramite AJAX, è possibile fare interagire l’utente direttamente con il server, aumentando quindi l’interazione con quest’ultimo, dando cioè la sensazione di poter lavorare direttamente sui dati, come se fosse un’applicazione desktop qualsiasi.

Con questo chiudo l’articolo, sperando che possa servire a mettere chiarezza nella mente di qualcuno biggrin emoticon Attendo i vostri commenti, a presto!

This entry was posted in Programmazione, Web e Web 2.0 and tagged , , , , , , . Bookmark the permalink.

2 Responses to Linguaggi Web

  1. Fabius says:

    Ottimo davvero.. anche se già ero informato su questo argomento, fa sempre bene risvegliare qualche vecchia nozione :)
    Inserito in My del.icio.us :P

  2. Denis says:

    Effetivamente, come quasi tutti gli articoli che scrivo, sono un promemoria su ciò che è essenziale sapere prima di prendere sotto mano un qualsiasi progetto, quindi aiuta anche me a risvegliare certe nozioni biggrin emoticon

    PS: grazie mille x il link, non dovevi tongue emoticon

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

*

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>