Sistema event-driven
La pagina Html di per sé è un oggetto statico. Esattamente come accadeva per le prime versioni dei browser qualche anno fa, il caricamento di una pagina Html nel browser è qualcosa di molto simile al caricamento di un documento da parte di un elaboratore testi. Una volta caricata, la pagina non può più essere modificata; si possono creare dei link che se selezionati dall’utente impongono al browser un nuovo collegamento col server web e richiedono il caricamento di un’altra pagina.
Ma allora come viene gestita l’interattività? Al momento del caricamento, se nella pagina è presente un codice script che esegue una determinata funzione, allo stesso modo è possibile indicare all’interno di certi Tag (come ad esempio il Tag che definisce un pulsante oppure le caratteristiche di visualizzazione di un’immagine) la funzione da richiamare al verificarsi di determinati eventi.
Un esempio tipico è l’evento onMouseClick; quando l’utente fa click con il tasto sinistro del mouse su un qualsiasi oggetto della pagina web, il browser genera comunque un evento specifico. Se in corrispondenza del tag che definisce un certo oggetto (un’immagine ad esempio) viene associata una funzione di script – caricata con il resto della pagina Html perché ne è parte integrante – questa viene attivata producendo l’effetto corrispondente. La gestione dell’interattività su queste basi è definita event-driven, ovvero guidata da eventi.
Script ed Applet
Nel prosieguo prenderò in esame le caratteristiche di alcuni componenti e funzionalità particolari delle pagine web ma merita un’attenzione speciale la distinzione fra Script ed Applet.
Va precisato che a differenza dei componenti aggiuntivi, come le animazioni realizzate in Flash piuttosto che la creazione di pagine dinamiche utilizzando DHTML o la realizzazione di applicativi client-server attraverso pagine PHP o ASP, gli Applet sono componenti molto più vicini al linguaggio Java e alla pagina Html. Infatti per inserire un applet nella pagina esiste un apposito Tag (APPLET appunto) che consente di definirne anche le caratteristiche di visualizzazione come dimensione e posizione, allo stesso modo in cui il tag IMG consente di gestire la visualizzazione delle immagini nelle pagine Html.
Mentre lo script è una parte integrante del codice della pagina Html, l’applet è in realtà un vero e proprio programma indipendente, realizzato in linguaggio Java. La differenza fra un applet ed un programma vero e proprio è che, mentre quest’ultimo una volta compilato diventa un’applicazione che può funzionare soltanto sul tipo di sistema operativo per cui è stato creato, l’applet può funzionare invece all’interno di qualsiasi browser, su qualsiasi tipo di computer.
II motivo di questo comportamento particolare dipende dal fatto che un applet è un programma dal punto di vista del funzionamento, in quanto viene scaricato come oggetto esterno alla pagina (al pari di un’immagine) ed eseguito (anzi per essere precisi viene avviato) all’interno di un preciso spazio dentro la finestra del browser, tuttavia sfrutta le funzionalità del browser per comunicare con l’utente e con l’esterno e per funzionare su qualsiasi piattaforma e sistema operativo. Anche l’applet viene avviato dalla Java machine presente sul computer e non ha bisogno di tutta una serie di elementi che lo rendono dipendente da un determinato sistema operativo poiché può soltanto funzionare all’interno della finestra del browser. Quindi potremo far funzionare un applet realizzato con un sistema di sviluppo Java Microsoft anche su macchine Unix e viceversa.