quaderni di usabilità TILS: Scuola Superiore Guglielmo Reiss Romoli

appuntamenti, strumenti di lavoro, personaggi, la rassegna stampa strumenti per approfondire gli argomenti scambia le tue idee ricerche bibliografiche, commenti e suggerimenti, libro degli ospiti consulta i quaderni

vai all'indice del quaderno n° 1

Architettura ed Evoluzione del World Wide Web
Java

Come detto precedentemente, i linguaggi di scripting vendono utilizzati per controllare gli oggetti presenti in una pagina. Non sono quindi adatti per realizzare applicazioni vere e proprie da eseguire sul client.

L’esigenza di eseguire programmi sul client è legata all’esigenza di riprodurre su Web i modelli dell’informatica aziendale. Infatti, con la possibilità offerta dal CGI di eseguire programmi sul server, era già possibile far lavorare il proprio browser come se fosse un terminale connesso ad un mainframe, per inviare e visualizzare dati.

Figura 36: pagina JavaScript

L’architettura informatica attuale, invece, vede l’esigenza di poter eseguire programmi sia sul server, sia sul client (modello client/server).

Figura 37: architettura client/server

Il problema che sorge nel dover eseguire programmi sul client è dovuta all’esigenza di indipendenza dalla piattaforma, già espressa a proposito dell’HTML. Il programma da trasferire, cioè, dovrà essere unico indipendentemente dalle caratteristiche della macchina che ne richiede il trasferimento e che poi dovrà eseguirlo: browser (Microsoft, Netscape, …), sistema operativo (Windows, UNIX, Macintosh, …), processore (Pentium, SPARC, PowerPC, …).

A questa esigenza risponde la tecnologia Java.

Java è innanzitutto un linguaggio orientato agli oggetti per scrivere programmi, come il "C++". Nella scrittura di questi programmi non si fa riferimento a nessuno specifico sistema operativo, ma ci si riferisce ad una macchina virtuale, detta Java Virtual Machine. I programmi Java, poi, vengono compilati generando un codice intermedio (byte code) che non è specifico di nessun processore reale al tempo in cui Java è stato introdotto. Per poter essere eseguito, quindi, un programma Java deve essere interpretato (o ricompilato) sulla macchina client dalla Virtual Machine (che è una componente del browser) in funzione delle proprie caratteristiche hardware e software.

Figura 38: architettura Java

La richiesta al server dell’invio di un programma Java è possibile inserendo in una pagina HTML il tag APPLET. Alla ricezione della pagina, il browser richiede al server il trasferimento del byte code, ricevuto il quale viene eseguito dalla Virtual Machine.

Con Java è possibile scrivere applicazioni comunque complesse, come ad esempio l’intera suite di programmi per office automation di "Corel Office for Java".

Figura 39: corel office for Java

In realtà l’interesse maggiore per Java nasce non tanto dalla possibilità di sostituire applicazioni esistenti, quanto, grazie alla sua indipendenza dalla piattaforma, di poter realizzare la parte client di applicazioni per servizi di rete, che possano essere eseguiti su terminali qualsiasi: dai netwok computer [NC], ai set-top-box televisivi [STB], ai cellulari GSM [GSM], agli apparecchi telefonici [NOR].