|
Nonostante l'affermazione di nuove tecnologie quali ASP, PHP, JSP e servlets Java,
gli script CGI scritti in Perl sono ancora molto utilizzati nei siti Web per trattare
l'informazione dinamica delle pagine HTML. Con l'utilizzo di tecnologie di
precompilazione e persistenza degli script quali mod_perl, a mio avviso il
Perl continua ad essere la scelta migliore quale linguaggio per la creazione di
script CGI.
CGI Programming with Perl (Luglio 2000) rappresenta la seconda edizione
di CGI Programming on the World Wide Web del 1996, rispetto alla quale è stata
riscritta ed aggiornata alle più recenti tecnologie. Inoltre, in questo libro della
O'Reilly di circa 450 pagine, l'attenzione è stata posta esclusivamente sul Perl,
tralasciando la discussione comparativa con altri linguaggi.
L'obiettivo dell'autore è naturalmente quello di insegnare al lettore a diventare
un buon sviluppatore di tecnologia CGI scritta in Perl. Il libro non è un cookbook
di progetti a sé stanti, ma descrive i vari argomenti attraverso una prima panoramica
seguita da esempli realizzativi di piccola e media dimensione. Utilizza Apache quale
web server di riferimento ed è sicuramente (ma non esclusivamente) unix oriented.
In un capitolo tipo si descrive inizialmente una particolare esigenza o problematica
della programmazione CGI. Di seguito vengono proposte diverse soluzioni al problema
ovvero diversi approcci che differiscono tra loro per la maggiore o minore complessità,
convenienza o semplicemente per una diversa implementazione. In ogni caso, si vuole
focalizzare sulla problematica (e sui suoi perché) dando numerosi spunti, piuttosto
che cercare una unica soluzione completa a tutti i costi.
Gli argomenti trattati nel volume sono:
- Introduzione generale a CGI
(storia, configurazione del server, etc)
- Il protocollo HTTP
(le URL, gli header HTTP, le risposte del server, etc)
- L'interfaccia CGI
(le variabili d'ambiente, gli header, etc)
- Le form HTML
(i tag e la codifica dell'input della form)
- Il modulo Cgi.pm
(trattare le variabili d'ambiente, l'input delle form,
l'upload di file, la generazione di HTML)
- I template HTML
(SSI, il modulo HTML::Template, Embperl, un
accenno al modulo Mason)
- Javascript
(controllo e validazione delle form, lo scambio di dati con il formato WDDX, le libromarklets)
- La sicurezza nei CGI
(Le diverse problematiche, la cifratura con MD5, Taint Perl)
- L'invio di email
(validazione degli indirizzi, sendmail, Mail::Mailer)
- La persistenza dei dati
(i file DBM e i relativi moduli per la loro gestione, DBI
e DBD::CVS, uno script completo per la gestione di un'agenda di indirizzi)
- Il mantenimento dello stato
(lo stato nelle query string, nei campi hidden, i cookies e lo script di una piccola shopping cart)
- Ricerca di informazioni sul web server
(dalla ricerca naïf alla ricerca indicizzata e su DBM)
- Generazione di grafica on the fly
(i moduli della famiglia GD e ImageMagick)
- Middleware e XML
(un accenno alla comunicazione tra server con LWP e un'introduzione all'uso di XML e XML::Parser)
- Debugging di applicazioni CGI
(errori tipici e consigli di buona programmazione, un accenno al debugger perl, a ptkdb e al debugger Activestate)
- Scrivere applicazioni CGI migliori
(buon senso e consigli nel progettare e programmare)
- Efficienza ed ottimizzazione
(fonti di inefficenza, FastCGI e mod_perl)
- Risorse
(bibliografia, siti, CPAN)
Il libro è davvero un ottimo punto di partenza per imparare la tecnologia
CGI. E' molto valido anche per migliorare e consolidare le proprie conoscenze,
per chi le ha acquiste in maniera incrementale e vuole ora un testo di
riferimento. Anche i super-esperti potrebbero trovare nella trattazione dei
più recenti argomenti, delle nuove visioni per la risoluzione di un problema.
Al volume manca la lode per quella cinquantina di pagine mancanti, nelle quali
si sarebbe potuto descrivere più in profondità alcune delle tematiche più
avanzate (fra tutte mod_perl, Mason e XML) e scrivere
qualche parola in più sugli altri argomenti.
|