|
Recensione di dada
19/12/2003
Seguito ideale di Learning Perl, il libro si presenta come
"ciò di cui hai bisogno per scrivere programmi lunghi da 100 a 10.000
righe", e mantiene in pieno la promessa.
La struttura del testo nasce evidentemente dall'esperienza di Schwartz
e compagni nel tenere corsi; ogni capitolo può essere utilizzato come
materiale per una lezione, e a fine capitolo vengono proposti esercizi
(con tanto di tempo, in minuti, da impiegare per risolverli), le cui
soluzioni vengono riportate in appendice. Ottimo strumento,
quindi, sia per potenziali professori che per studenti, i quali possono
usarlo,
per usare una parola molto in voga di questi tempi, in modalità di
"autoapprendimento".
La trattazione teorica è sempre accompagnata passo passo da esempi,
folcloristicamente tratti da una serie televisiva (Gilligan's Island) molto
conosciuta negli Stati Uniti, cosa che dovrebbe suscitare, immagino,
la simpatia quando non l'ilarità del lettore; non conoscendo purtroppo
tale serie, non posso giudicare quanto l'aspetto umoristico sia stato
azzeccato.
Per quanto riguarda i contenuti, i temi principali, come suggerisce il
titolo, sono 3: reference, programmazione ad oggetti e moduli. Ottima e
abbondante la prima parte, molto buona anche la seconda (avrei gradito
forse soltanto qualche accenno in più agli strumenti che CPAN mette a
disposizione per la programmazione OO, dei quali viene citato solo
Class::MethodMaker), un po' troppo superficiale a mio avviso la terza.
Si parte dalla creazione di semplici moduli per arrivare a pubblicare
il proprio codice su CPAN, ma in maniera forse un po' troppo rapida e
con un percorso quantomeno lacunoso.
L'impaginazione a la battitura sono quasi del tutto impeccabili, come da
standard O'Reilly. A voler proprio essere pignoli, ho notato
delle sottilissime imprecisioni grafiche nelle prime 2 figure del libro, ma
la fruizione del contenuto non ne risente affatto.
In conclusione, un ottimo testo, da leggere in ogni caso, anche se avete
già esperienza di OOP e di reference in Perl, e da leggere sicuramente
(dopo il Learning Perl) se di esperienza non ne avete.
↑
Recensione di Rosario Colletti
19/12/2003
Il linguaggio Perl è un potente linguaggio di programmazione con il quale è
possibile scrivere da semplici script per amministrare i sistemi a
più complesse applicazioni che possono interagire con i database, come le
applicazioni Web, sempre con lo stesso motto: 'Fare facilmente le cose
facili e rendere possibili le cose difficili'.
In questo libro l'autore, che ha anche scritto Learning Perl (ed
O'Reilly) ci spiega con estrema chiarezza e gradualità le funzioni avanzate
del Perl e il modo di utilizzarle per scrivere meglio le proprie applicazioni.
Questo libro è destinato a un pubblico che già è pratico della sintassi e dei
comandi base del linguaggio Perl, ma vuole approfondire le sue conoscenze al
fine di scrivere applicazioni complesse che utilizzano classi, oggetti e
referenze, e costruire le proprie librerie.
Ogni capitolo contiene alcuni esercizi e le relative correzioni, di difficoltà
crescente, rendendo questo manuale un ottimo libro di testo per l'insegnamento.
I primi capitoli (1-4) coprono argomenti come l'uso di
@INC, eval, do, require
e la creazioni di packages. Vengono anche introdotte le references e il loro
utilizzo, nel caso di strutture complesse con HASH e ARRAY.
I seguenti capitoli (5-7) spiegano come gestire strutture dati complesse: uso
del debugger, le classi Data::Dumper e Storable, i versatili
comandi map e grep, e tutto quello che c'è da sapere sulle references:
derefencing, nested references, subroutine references,
anonymous references in una serie di esempi
sempre più complessi. Un intero capitolo è riservato a trucchi pratici sull'uso
delle references, come l'ordinamento efficiente di dati complessi (Schwartzian
Transform).
I capitoli 8-12 sono dedicati agli oggetti: il Perl è anche un linguaggio
Object Oriented e in questa sezione sono definiti tutti i concetti e le funzionalità
degli oggetti in Perl: istanze, oggetti, classi, ereditarietà,
costruttori, distruttori, @ISA, AUTOLOAD, EXPORT, ecc.
Sono 4 capitoli veramente preziosissimi
perché sono chiari e completi e danno le basi per leggere e comprendere in modo
immediato gli oggetti creati da altri.
Gli ultimi capitoli 13-15 descrivono in modo esaustivo l'uso dei moduli Perl,
come scrivere la propria distribuzione, come procedere al testing (usando
Test::Simple,
Test::More) e infine come contribuire al CPAN.
Capitolo dopo capitolo, l'autore propone problematiche sempre più complesse e
descrive quali sono gli strumenti del Perl che risolvono il problema, dal più
grossolano al più elegante, dal più semplice al più complesso, nell'ottica
finale di rendere il lettore capace di programmare le applicazioni più complesse.
|