Matematica e javascript: il perché di una scelta
In questa sezione del nostro sito sono raccolti gli esercizi javascript
proposti e sviluppati in alcune classi del Liceo Scientifico Grigoletti, nel
corso di Matematica con elementi di informatica.
Non si tratta di un corso di Javascript (ce ne sono anche già troppi
in rete!), ma semplicemente di alcuni esempi commentati per favorire
l'apprendimento da parte dei nostri allievi. Lo stesso vale per i commenti
sparsi nelle varie pagine che non hanno alcuna pretesa di completezza. Per
imparare a fondo Javascript è indispensabile utilizzare un buon manuale e
consultare la documentazione ufficiale sul sito di Netscape
I prerequisiti richiesti per leggere queste pagine sono la conoscenza degli
elementi fondamentali dell'HTML e alcune nozioni di base di un qualunque
linguaggio di programmazione. Le pagine di questa sezione contengono una breve
descrizione del problema (di solito un problema di carattere matematico, ma non
sempre), una discussione della risoluzione mediante un codice javascript, la
presentazione del codice vero e proprio con alcuni commenti (non esaustivi!),
uno o più esempi funzionanti (di solito solo in Internet Explorer!), la proposta
eventuale di qualche esercizio.
Javascript è un linguaggio ancora molto poco utilizzato nelle nostre scuole
come linguaggio di programmazione. Noi riteniamo che, perlomeno in quei percorsi
dove non esiste un vero e proprio corso di Informatica, ma la informatica è
affidata all'insegnante di matematica (come succede in tutte le sperimentazioni
PNI), javascript offra non pochi vantaggi (assieme, ovviamente, ad alcuni
svantaggi).
- Il tempo a disposizione per insegnare informatica è veramente poco e non
si riesce a costruire con gli allievi programmi complessi. Le applicazioni più
importanti di Javascript sono costituite da piccoli script di comprensione
sufficientemente semplice e facilmente realizzabili, in maniera completa,
anche in una sola ora di lezione. Javascript infatti è un linguaggio
abbastanza complesso, adatto all'uso da parte di programmatori professionisti.
Se però ci si limita alle piccole e limitate applicazioni che si riesce a fare
nei corsi scolastici citati, Javascript risulta, a nostro avviso,
particolarmente semplice.
- Non c'è, a tutt'oggi, un sistema "Visual" per costruire programmi
Javascript, anche se ci sono editor che facilitano la stesura dei programmi.
Questo fatto, che a prima vista può sembrare una limitazione, è invece un
vantaggio per gli scopi didattici che ci siamo prefissi, e avvicina questo
modo di scrivere programmi al vecchio e glorioso TurboPascal, che per tanti
anni ha regnato incontrastato nelle aule scolastiche.
- Javascript non costa nulla: esso è fornito gratuitamente assieme ai
browser più diffusi che possono essere scaricati dalla rete.
- Per imparare a programmare, il miglior metodo è studiare i programmi già
pronti e cercare di adattarli alle proprie esigenze. Poiché i programmi
Javascript incorporati nelle pagine web hanno il codice sorgente che non può
essere nascosto, si trova in rete un sacco di materiale da esaminare e da cui
apprendere anche le più sofisticate tecniche di programmazione.
- Javascript è un linguaggio interpretato e non compilato. Questo è, di
norma, uno svantaggio per il rallentamento dei tempi di esecuzione. Il
problema diventa però sensibile, soprattutto con gli odierni processori, solo
per programmi complessi che, nei corsi scolastici che abbiamo citato, non si
riesce assolutamente a costruire. Al contrario questo può costituire un grande
vantaggio, proprio per la possibilità di leggere e studiare il sorgente di
programmi costruiti da altri e messi in rete.
- La conoscenza di Javascript consente, oltre alla costruzione di normali
programmi con applicazione "matematiche", di gestire pagine web dinamiche, con
"effetti speciali" molto gradevoli, grazie alla capacità di Javascript di
controllare il comportamento del browser.
- L'interfaccia grafica dei programmi Javascript è costruita in HTML, per
cui studiare Javascript significa studiare anche un po' di HTML, la qual cosa
ci pare non trascurabile.
- La totalità dei programmi costruiti può essere messa in rete senza che ci
sia la necessità per l'utente di scaricare particolari oggetti per la
visualizzazione (plug-in o aggeggi simili).
Per contro
- Javascript non consente di scrivere sull'HD, ma questo è un problema
legato alla sicurezza dei file sul proprio computer: non è molto simpatico che
un programma di provenienza sconosciuta possa liberamente entrare nel nostro
computer e manipolarne i file (cosa che del resto fanno egregiamente i
virus...)
- Javascript non ha comandi specifici per la gestione della grafica, anche
se è possibile costruire applicazioni con effetti grafici importanti (vedi la
sezione link
di questo sito per dettagli).
- Javascript non ha uno standard definitivo e ci sono limitate differenze
nelle implementazioni dei motori Javascript da parte dei più diffusi browser.
Javascript nasce in casa Netscape, ma, visto il suo successo, anche
Microsoft ha inserito nel suo browser un interprete Javascript (con il
nome Jscript). Questo è ovviamente un problema, ma con questo tipo di problemi
chiunque lavori con Internet deve avere a che fare quotidianamente.
Per concludere vogliamo segnalare che Javascript è una cosa completamente
diversa da Java con cui condivide solo un pezzo del nome, ma esistono alcune
similitudini sintattiche che, comunque, faciliteranno un primo approccio a Java
da parte dei più volenterosi.