Il cuore di una applicazione web è la strategia adottata per generare le pagine dinamiche, ovvero il meccanismo che decide quali contenuti mostrare in base all'URL richiesto dall'utente. Usare lo Zend Framework non significa adottare necessariamente il suo sistema di gestione delle pagine web, anche se non farlo sarebbe veramente un peccato. In questo tutorial seguiremo quindi l'approccio proposto dal framework che si basa sul modello MVC, meccanismo alla base di molti framework, anche di altri linguaggi di programmazione.
Lo scopo dell'architettura MVC è quello di rendere più semplice la realizzazione e la manutenzione del codice, attraverso una separazione netta delle diverse competenze in componenti distinti. Il modello MVC considera i dati, l'interfaccia e la logica di funzionamento i 3 aspetti fondamentali di qualsiasi elemento che interagisce con l'utente. Questi 3 aspetti sono affidati ad altrettanti componenti che prendono rispettivamente il nome di Model, View e Controller. Questi tre componenti interagiscono tra loro e, ciascuno secondo le proprie responsabilità, realizzano tutte le funzionalità di un elemento dell'applicazione. Ad esempio, una pagina di registrazione di un utente potrebbe essere realizzata con un Model che si occupa di memorizzare i dati dell'utente nel database, di una View che realizza il form di inserimento dei dati e mostra un messaggio di avvenuta iscrizione e di un Controller che coordina le diverse fasi della registrazione e determina l'ordine delle operazioni.
Il modello MVC è molto diffuso nella realizzazione del software ma la sua implementazione cambia nei diversi contesti. Quindi, invece di annoiarci con una trattazione teorica, passiamo subito ad analizzare la sua realizzazione nello Zend Framework.