-+  Associazione
-+  Documenti
 |-  Modern Perl
 |-  Bibliografia
 |-  Articoli
 |-  Talk
 |-  Perlfunc
 |-  F.A.Q.
 |-  F.A.Q. iclp
-+  Eventi
-+  Community
-+  Blog
-+  Link
Corso di Perl



 
Darren Chamberlain, Dave Cross, Andy Wardley Versione stampabile.
Perl Template Toolkit
0-596-00476-1 - O'Reilly - 2003 - 39.95 USD

Recensione di larsen Punteggio: 4/5
24/2/2004

Template Toolkit è uno strumento particolarmente interessante per parecchie ragioni. Mi limito a citarne un paio. Ci si può fare tutto, dall'automatizzazione della gestione di un sito statico, fino all'applicazione web. In altre parole, è scalabile. Seconda ragione: sta, per così dire, in piedi con le proprie gambe: benchè il meglio lo dia se usato insieme al Perl, è possibile pensare di usarlo come oggetto a sè stante.

Attendendo il testo mi chiedevo quale sarebbe stato il taglio scelto dagli autori, quale sarebbe stata l'idea che avrebbero cercato di comunicare al lettore (incidentalmente, mi chiedevo anche se avrebbero cercato di comunicare alcunchè oltre a descrivere come usare Template Toolkit: ma questo dubbio era molto blando, in effetti).

Tenendo conto di queste premesse e questi criteri, penso che Perl Template Toolkit sia un libro efficace ed interessante, un acquisto da consigliare: ai programmatori Perl che debbano produrre HTML dinamico, ovviamente, ma anche (soprattutto?) a chi ha già adottato qualche altro sistema per i suoi lavori orientati al Web.

La prima idea felice del libro è la scelta dell'argomento con cui partire, cioè il contenuto del secondo capitolo (e un'idea altrettando felice è stata quella di mettere proprio questo capitolo on-line: scaricatelo): in esso si descrive l'uso tpage e ttree, due utility che sono i principali mezzi tramite i quali, come dicevo, Template Toolkit è usabile come oggetto indipendente. Leggendo il secondo capitolo si può cominciare subito a fare qualcosa di utile, come ad esempio ripensare la gestione della propria homepage o di un semplice sito. A dimostrazione di quello che gli autori dicevano nel primo capitolo ("templates can be written and edited by people who do not know Perl"), non c'è una sola riga di Perl. Mai mi sarei immaginato di scrivere qui, e con entusiasmo, una cosa simile.

Si prosegue con la descrizione della sintassi e delle direttive del linguaggio di Template Toolkit: forse avrei preferito una forma più schematica per questa sezione, che invece si presenta a metà tra un tutorial e una reference. Ad ogni modo, niente cui non si possa porre rimedio personalizzando la propria copia del testo con segnalibro e post-it (almeno, personalmente di solito faccio così).

E finalmente si entra nel vivo, introducendo i filtri e i plugin presenti nella distribuzione standard di Template Toolkit. Ancora una volta si tratta di una esposizione lineare, che ha però il valore aggiunto di "stuzzichino" per il lettore, che al termine di questa sezione, e dopo un'opportuna e dettagliata panoramica dell'architettura di Template Toolkit (parlo del settimo capitolo) sarà istruito sulle tecniche da impiegare per estendere il framework con i propri componenti. Direi che è la parte più interessante da studiare, per chi è già un utente di Template Toolkit. Da menzionare il fatto che gli esempi forniti non sono mai banali, ma applicabili ad un contesto applicativo concreto (inoltre, per la cronaca e per dissipare timori che ho forse potuto alimentare, qui di righe di Perl ce ne son parecchie).

Nei successivi due brevi capitoli si parla di accesso a database e di lettura e generazione di file XML: Template Toolkit si limita (si fà per dire) a mettere a disposizione, sotto forma di plugin, il modulo DBI e vari oggetti della gerarchia XML::*; nel testo però si spazia, in particolare nella parte riguardante l'accesso ai database, proponendo qualche modo per realizzare dei layer di astrazione da interfacciare poi ai propri template. Non si tratta di capitoli approfonditi, e tutto sommato non sarebbe il libro adatto per scavare di più. Interessante l'esempio che si avvale Class::DBI (sul cui uso insieme a Template Toolkit, e sul perché è comodo e sul perché non sempre vada bene, ho già scritto qualcosa qui).

Il capitolo undicesimo, se vi interessa l'uso di Template Toolkit per gestire in maniera furba un sito statico, andrebbe letto subito dopo il secondo. Si parla di "Advanced Static Web Page Techniques". Menu contestuali, skin applicati alle pagine, pulsanti di navigazione, generazione di tabelle dei contenuti... notevole. E pratico, come al solito.

L'ultimo capitolo descrive come usare Template Toolkit per servire contenuti dinamici, proponendo la realizzazione di una piccola applicazione web: la Guida Galattica per Autostoppisti (a proposito: tutti gli esempi del libro usano personaggi, nomi e situazioni dei romanzi di Douglas Adams). Template Toolkit permette vari gradi di separazione tra logica applicativa e presentazione, ed è lasciata al programmatore la scelta, benché sia scoraggiato mettere troppa logica all'interno dei templates. Gli autori mettono in guardia riguardo questa cattiva pratica, e infatti la maggior parte del capitolo descrive un'applicazione CGI a mio parere ben strutturata, che solo successivamente, e a titolo di esempio, viene rifatta "stile ASP o PHP".

Pro

  • È esaustivo nel descrivere gli ambiti in cui Template Toolkit può essere adoperato
  • Esempi concreti e riutilizzabili
  • Il capitolo sull'architettura di Template Toolkit è anche una lezione di ingegneria del software

Contro

  • Per le parti che si presterebbero ad essere usate come reference (sintassi e direttive), l'ordine espositivo potrebbe essere migliore
  • Il confronto con altri sistemi di templating è poco approfondito

D:
Progetti e documenti in rilievo
Corso di Perl Progetto pod2it
D:
La ML di Perl.it
mongers@perl.it è la lista ufficiale di Perl Mongers Italia per porre quesiti di tipo tecnico, per rimanere aggiornato su meeting, incontri, manifestazioni e novità su Perl.it.
Iscriviti!
D:
Annunci Google