Template Engine, indispensabili per lo sviluppo di siti e applicazioni web
Nell’articolo precendente avevo parlato del pattern Model-View-Controller, ma prima di affrontare il tema dei Frameworks, vorrei presentarvi una soluzione per applicare parte di quel modello alla risoluzione di un progetto: i template engine.
Si tratta di software che gestiscono la visualizzazione in un applicazione web, consentono di separare completamente l’HTML dal resto del codice, diminuendo considerevolmente il lavoro di manutenzione e rendendo indipendenti le vari parti del progetto.
Vantaggi
Con i Template Engine si può sviluppare un applicazione web disinteressandosi completamente, in un primo tempo, dell’aspetto di visualizzazione dei dati e della grafica poi sviluppare la grafica e la presentazione dei dati come un problema a sè stante. Questo consente di suddividere il lavoro in più tempi semplificandone certi aspetti oppure nel caso si lavori in team di dividere il lavoro a varie persone.
Nel caso per esempio si volesse rinnovare completamente la grafica di un applicazione basterà mettere mano ai template senza dover andare a toccare il codice del controller (il motore dell’applicazione). Il controller si occuperà solo dell’elaborazione mandando al template engine dati “rozzi” che quest’ultimo implementerà nell’HTML.
Per riassumere possiamo vedere i seguenti come i principali vantaggi:
- Manutenzione, se dobbiamo fare semplici mofiche al codice del motore dell’applicazione sarà più semplice senza dover toccare la parte grafica
- Grafica completamente separata dal codice, quindi le due cose possono essere sviluppate da persone differenti e in momenti differenti
- Aiuta a mantenere il codice html pulito e conferme agli standard
- Velocità, grazie alla cache, implementata ormai in molti template engine, la presentazione delle pagine è più veloce
- Sicurezza, tra l’utente male intenzionato e il codice del controllore c’è uno sbarramento in più.
- Riutilizzo, possiamo cambiare completamente la grafica senza toccare il codice.
Come per i frameworks anche in questo caso esistono vari template engine per ogni linguaggio di programmazione, quello da me più utilizzato che vedremo nello specifico è Smarty.
In realtà potremmo anche valutare di realizzarne uno molto semplice noi, questo per un sito di poche pagine senza grandi pretese potrebbe essere una buona soluzione ma i vantaggi che comporta utilizzarne uno già fatto sono numerosi, dalla sicurezza alla facilità di implementazione.
Smarty
Smarty è un motore di web template scritto in PHP attualmente è alla versione 2.6 ma è in fase di completamente la versione 3.0 (per ora è stata rilasciata la beta 7). In pratica si tratta di una classe scritta in PHP per gestire template ovvero nient’altro che file con estensione .tpl scritti in html a cui possiamo collegare CSS, Ajax, Javacript ecc ecc.
Nel template al posto dei contenuti andiamo a mettere dei speciali tag tra parentesi graffe. Smarty non farà altro che prendere i contenuti passati dal codice e metterli nel template in html al posto dei tag. La realizzazione di tutto ciò la andremo a vedere nei prossimi articoli.
















Non ci sono ancora commenti!