![]() |
![]() CORSO DI JAVASCRIPTPrima Parte - Introduzione; JavaScript e il Web; Note per il lettore; Informazioni sulle versionidi Luciano Giustini Introduzione
Per certi versi propriamente, molti in questo periodo di tempo sono convinti che il Web stia
crescendo troppo o troppo in fretta, e si stanno interrogando su dove si arrivera' nei prossimi anni (o mesi).
D'altronde, e' recente l'introduzione della tecnologia "push", ovvero quella tecnologia che permette di ricevere
sul proprio desktop parte delle informazioni che normalmente ricerchiamo in rete, e della tecnologia degli "Agents",
agenti software che girano la rete cercando per noi le informazioni che preferiamo. Due metodi innovativi e che,
per certi versi, sono destinati a cambiare gli scenari dei prossimi anni, tanto dal lato organizzativo quanto da quello commerciale.
Ma molte altre novita' si affacciano al monitor del nostro computer e non passa giorno che non si assista a miglioramenti,
aggiunte, riversamento di dati, maggiori servizi offerti, possibilita' sempre piu' ampliate e impegnative.
Questo ci porta a due considerazioni. La prima e' che a questo ritmo di crescita (che gia' molti identificano con un "calendario" differente: tre mesi normali equivarrebbero a circa un anno web) molte soluzioni tecniche sono destinate a cambiare rapidamente o a diventare obsolete nel giro di pochi anni (web).Questo gia' accade normalmente per il mondo dei computer, e non e' una novita'. Non e' nemmeno una gran notizia sapere che il proprio computer dopo pochi anni (normali) diviene obsoleto, ma tant'e'. Nel mondo di Internet questa trasformazione e', se possibile, ancora piu' rapida: tre anni fa il web era due o tre paginette, dopo un mese era mille, dopo tre mesi un milione; sempre tre anni fa una banda di 128K era il non plus ultra, avere un sito proprio costituiva un lusso e nella stragrande maggioranza dei casi le informazioni bisognava andarsele a cercare, e con cura anche. Ora, nella seconda meta' del 1997, ci sono centinaia di milioni di server collegati in rete, una linea a due Megabit e' considerata il minimo per un ISP, un sito con dominio proprio e' solo il punto d'ingresso per una serie di servizi che sempre piu' soggetti, anche di modesta entita', erogano sul web. Il TCP/IP, collante per tutta la ragnatela, ancora regge ma il protocollo HTTP gia' e' obsoleto e presto cedera' all'HTTP 1.1, piu' prestante. Le universita' americane, preoccupate dalla tendenza commerciale che il web sta mostrando e che si presume sara' la sua anima futura, stanno formando l'Internet II. Tutto questo mentre fra un po' il Web si unira' alla TV e gireremo tra i siti e riceveremo informazioni col telecomando del nostro apparecchio televisivo. Insomma, un mondo in continua evoluzione cui e' difficile star dietro, almeno tecnicamente, e che richiede sempre piu' impegno e investimenti per tenergli testa o al limite per rimanere "visibili".
La seconda considerazione, importante per chi seguira' questi articoli, e' legata alle pagine. Il mare magnum delle pagine del web e' iniziato con il facile HTML 2.0, che ne ha decretato
l'enorme successo e ha facilitato lo sviluppo di Internet intesa come ragnatela mondiale di documenti iper-collegati.
Ma dopo poco gia' era l'ora di HTML 3.0, e siamo attualmente al 4.0. Ma questo e' nulla, perche' la crescita del web e' avvenuta
talmente in fretta che si e' avuto bisogno, per soddisfare molteplici esigenze, di strumenti per l'impaginazione molto piu' articolati e potenti.
E poiche' fin da subito una delle critiche mosse al web e' stata di essere ben poco interattivo, si e' avuto bisogno anche di strumenti
per agganciare l'utente al server, e viceversa, per rendere "pronte alla risposta" le pagine, i moduli, le interrogazioni, e chi piu'
ne ha piu' ne metta. Quindi all'HTML "puro" si sono affiancati nel tempo linguaggi interpretati, in bytecode, esterni, ecc.
per rendere le pagine e i siti che le ospitano delle vere e proprie centrali di servizi.
![]() JavaScript e il Web
Dopo aver dato un'idea (senza dubbio incompleta!) del momento che la rete sta attraversando, e dopo
aver introdotto a grandi linee il linguaggio JavaScript, iniziamo a vederlo piu' da vicino. Innanzitutto e' bene sottolineare che
la grande forza di JavaScript (d'ora in poi JS), e anche la sua difficolta' iniziale, risiede nella vicinanza al C, e precisamente alla
versione introdotta con Java, ovvero il C senza puntatori (da cui il prefisso Java-). Sebbene non presenti
l'enorme versatilita' e duttilita' del C vero e proprio, e sia in ogni caso limitato nelle funzionalita'
rispetto a Java, JS rappresenta comunque un linguaggio in tutto e per tutto, e in questo si discosta dalla
procedura a marcatori dell'HTML. In altre parole, si tratta di due oggetti diversi, con finalita' simili ma
con un approccio significativamente differente.
Dal punto di vista esecutivo JS e' un linguaggio imperativo interpretato, dal client stesso, e quindi non richiede
compilazione. Tutto cio' che serve per vederlo funzionare e' un client web che
lo supporti. E' un linguaggio di scripting, e viene quindi scritto dentro le pagine web stesse (e' possibile anche collegarlo da listati esistenti, vedremo come). E' poi il client, individuatolo dai marcatori HTML propri, a eseguire il codice, a
visualizzare la pagina, ad eseguire altro codice, e via interagendo.
Note per il lettoreIl Corso tecnico JavaScript è rivolto soprattutto agli scrittori HTML. Per molti aspetti JS può essere considerato un'estensione dell'HTML perchè arrichisce il formato con una serie di nuove funzionalità di interattività, con una struttura ad oggetti, e con una gestione degli eventi. I programmatori alle prime armi potranno considerare JavaScript come un valido primo passo verso il più avanzato linguaggio di programmazione Java. Prerequisito essenziale per seguire questo corso è, quiundi, una buona conoscenza dell'HTML e delle caratteristiche di utilizzo di un client JS-compatibile come Netscape Navigator (dalla versione 2.0 in poi). Nel seguito del corso, poi, una posizione di primo piano verrà data al codice sorgente di JS. L'esame del codice è, infatti, il modo di gran lunga migliore per imparare i meccanismi di ogni linguaggio.
Informazioni sulle versioni e sul software di sviluppoAl momento di comporre questo corso, JavaScript 1.0 è supportato correttamente da Netscape Navigator 2.0, mentre la versione 1.1 da 3.0 e 4.0 nelle varie piattaforme, e da Microsoft Internet Explorer 3.0 (vedi oltre) e 4.0 beta. Tutti gli esempi riportati sono stati collaudati con una gamma di versioni Netscape tra le quali Navigator 3.0 e 4.0. Sebbene sin dalla versione 2.0 di Netscape JS sia supportato correttamente, Netscape Navigator 3.0 è la versione minima raccomandata come ambiente di sviluppo JS, per le notevoli migliorie e bug-fix che vi sono stati apportati. Ricordatevi che molte caratteristiche di JS che funzionano sotto Netscape Navigator 3.0 non sono compatibili all'indietro con Navigator 2.0, mentre in avanti in genere non c'è alcun problema. Faccio notare anche che, diversamente dalla versione 4.0 attualmente in via di ultimazione, la versione 3.0 di Internet Explorer supporta solo un subset del JS 1.1. Se dovrete sviluppare codice con la specifica di compatibilità per entrambi i client, dovrete provarlo anche sotto MSIE prima di poterlo pubblicare.
Corso JavaScript - Seconda Parte
Luciano Giustini è raggiungibile su Internet all'indirizzo l.giustini@beta.it
|
|