Home
I browser e il Web inter-attivo

29 Ottobre 1998

I browser e il Web inter-attivo

di

Quali sono le tecnologie che consentono a un browser di contribuire a rendere il Web attivo e interattivo?

Navigando nel mondo variopinto e luccicante di Internet mi tornano alla mente le pagine grigie e austere degli albori del Web, quando accedere ad una pagina significava semplicemente visualizzarne il contenuto costituito il più delle volte soltanto da testo e qualche volta da un paio di immagini. Oggi accedere ad una pagina Web vuol dire, sempre più spesso, attivare delle piccole applicazioni che animano il contenuto della pagina rendendola (ma non sempre) più accattivante.

Accedere ad alcuni siti è come entrare a Las Vegas o nella Los Angeles di Blade Runner con banner lampeggianti, immagini in movimento, sottofondi musicali, zone della pagina che reagiscono in varie maniere al passaggio del mouse.
Ma cos’è che può rendere le pagine di oggi sempre più animate rispetto a quelle del passato? Cos’è accaduto dal punto di vista tecnologico nel frattempo?

Quello che è accaduto riguarda i browser e, più in generale, le piattaforme client. In principio un browser si limitava ad interpretare il codice HTML che veniva inviato dal server Web. Per questo compito non era essenziale la potenza di calcolo di un comune personal computer: sarebbe stato sufficiente un qualsiasi terminale con un minimo di elaborazione autonoma per interpretare le pagine HTML.
Tuttavia i produttori di browser si sono resi conto che poteva essere utile sfruttare la capacità di elaborazione del client per ottimizzare l’uso della rete e introdurre alcune innovazioni nella presentazione dei dati su una pagina Web.

Immaginate un modulo per l’inserimento di dati: se l’utente inserisce un valore errato e invia i dati al server avrà come risposta un messaggio d’errore, con la conseguenza che dovrà reinserire un valore corretto ed aspettare nuovamente la risposta. Ciò si traduce in un tempo di attesa consistente da parte dell’utente, un aumento del lavoro per il server ed una aumento del traffico sulla rete. Se il client è in grado di intercettare il valore errato prima che i dati vengano inviati al server se ne ottiene un vantaggio considerevole.
Immaginate, inoltre, un insieme di pulsanti grafici che al passaggio del mouse cambiano aspetto e visualizzano un messaggio che dà maggiori dettagli su quello che troverete se vi cliccate sopra. La leggibilità e l’estetica ne traggono sicuramente vantaggio.

Sul principio di sfruttare le capacità di elaborazione del client si basano alcune tecnologie che, combinate tra loro, consentono di realizzare pagine interattive ed effetti veramente spettacolari.

Tra le prime soluzioni, sull’onda della diffusione e del successo di Java, c’è stata l’introduzione degli applet Java http://java.sun.com. Un applet è una piccola applicazione Java che, inserita opportunamente in una pagina HTML e inviata al browser, viene eseguita sul client e consente di effettuare elaborazioni anche complesse: effetti di animazione delle immagini, visualizzazione di testo in movimento, calcoli matematici, ecc. Per poter sfruttare le potenzialità che un applet Java mette a disposizione occorre disporre di una Java Virtual Machine (JVM), cioè di un interprete in grado di eseguire il codice Java contenuto nell’applet. Ormai tutti i browser hanno una JVM integrata tra le loro funzionalità, per cui non c’è da preoccuparsi per l’accessibilità di pagine con applet Java incorporati.

Un’alternativa agli applet proposta da Microsoft è quella che si basa sulla tecnologia ActiveX. Questa tecnologia ricalca nelle linee fondamentali il principio di base degli applet: un controllo ActiveX è una piccola applicazione scritta in un qualsiasi linguaggio di programmazione, secondo le regole dello standard Common Object Model (COM), e inserita in una pagina HTML. A differenza degli applet Java, un controllo ActiveX non ha bisogno di un interprete particolare ma si basa sulla capacità di supporto dello standard COM da parte del sistema operativo.

Attualmente i sistemi operativi che supportano COM sono quelli della Microsoft (Windows 95/98 e NT) anche se esistono delle estensioni per altri sistemi operativi. In sintesi, una pagina Web che contiene un controllo ActiveX viene visualizzata ed attivata senza particolari esigenze su una piattaforma Microsoft, mentre altre piattaforme richiedono un supporto speciale. Al contrario gli applet Java sono indipendenti dalla piattaforma che richiede la pagina Web. Per quel che riguarda la capacità di elaborazione, i controlli ActiveX hanno le stesse capacità degli applet Java con il vantaggio che sono maggiormente integrati con il sistema operativo ospite e pertanto possono sfruttarne a pieno le capacità: ad esempio, non hanno bisogno di un interprete in quanto sono direttamente eseguibili.

Alle tecnologie illustrate sopra se ne affianca un’altra che ha riscosso un grande successo e sembra avviata a diventare la tecnologia principale per la realizzazione di pagine dinamiche e veloci da scaricare. La tecnologia a cui mi riferisco è quella basata sui linguaggi di scripting. Un linguaggio di scripting è un linguaggio meno potente di un vero e proprio linguaggio di programmazione, che viene interpretato direttamente dal browser, garantendo così indipendenza dalla piattaforma client.

I linguaggi di scripting attualmente più diffusi sono JavaScript, introdotto da Netscape e supportato anche da Microsoft, e VBScript, introdotto e supportato da Microsoft. Sfruttando questi linguaggi è possibile inserire in una pagina HTML delle istruzioni che consentono di manipolare gli elementi della pagina e di impostare le modalità con cui questi elementi reagiranno alle interazioni con l’utente. Gli script (così si chiamano i blocchi di istruzioni in JavaScript o VBScript) presentano una serie di vantaggi rispetto agli applet Java e ai controlli ActiveX: sono molto più leggeri, nel senso che vengono scaricati molto più velocemente, sono indipendenti dalla piattaforma client e, se si usa JavaScript, sono abbastanza indipendenti dal browser utilizzato, sono semplici da realizzare, non richiedendo ambienti di programmazione specifici. Inoltre tramite un linguaggio di scripting è possibile gestire e controllare, oltre agli altri elementi HTML presenti su una pagina Web, sia gli applet Java che i controlli ActiveX.

Tuttavia gli applet, i controlli ActiveX e i linguaggi di scripting hanno una limitazione fondamentale: non possono accedere arbitrariamente sul disco del client. Questa caratteristica fornisce una sorta di garanzia per la sicurezza dei propri dati: immaginate, per esempio, se accedendo ad una pagina Web un controllo ActiveX vi cancellasse dei file presenti sul vostro disco fisso! Sarebbe senza dubbio una spiacevole sorpresa.

Grazie alla combinazione di queste tecnologie possiamo ottenere pagine Web molto attraenti e, sfruttandole opportunamente, efficienti. Non sempre, comunque, gli effetti speciali sono graditi, soprattutto se appesantiscono la pagina e ne pregiudicano la leggibilità: è sempre meglio una pagina semplice e funzionale che una pagina stracolma di effetti speciali ma inutilizzabile o quasi.

Iscriviti alla newsletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.