PHP è forse il linguaggio con il più elevato numero di Web framework disponibili. Sono Simone Carletti ed oggi scopriremo insieme le caratteristiche di Zend Framework, uno dei framework PHP più professionali.
Zend Framework nasce nel 2005, ideato, promosso e sponsorizzato da Zend Technologies, la stessa società responsabili dello sviluppo del linguaggio PHP. È un framework MVC open source, rilasciato con licenza new BSD e scritto completamente in PHP 5, senza l'uso di componenti o dipendenze esterne.
Due collaborazioni importanti hanno influenzato lo sviluppo di Zend Framework. Il contributo Google ha portato alla creazione di Zend_GData, una libreria per interagire con i servizi di Google accessibili via API come Youtube o Google Calendar. Un recente accordo con Dojo ha introdotto il supporto JavaScript e AJAX.
L'architettura del framework è modulare ed ogni elemento è un componente autonomo. Tuttavia le dipendenze di ciascun componente sono sempre all'interno del Framework. Questo consente di integrare singoli componenti del framework in applicazioni già esistenti, senza la necessità di includere l'intera collezione di librerie.
Questi componenti coprono tutti gli ambiti di una normale applicazione Web ed offrono funzionalità non disponibili in altri framework, come il supporto avanzato ai Web service.
A seconda delle loro caratteristiche, è possibile raggruppare i componenti in categorie come: MVC, Database, Internazionalizzazione e Localizzazione, Autenticazione, Email, Ricerca, Web service e Core.
La struttura modulare di Zend Framework lo rende un'ottima scelta sia per nuove applicazioni sia per applicazioni esistenti. La documentazione è ricca ed in costante aggiornamento. La qualità del codice è eccellente e non mancano l'uso di unit test, design pattern ed altre moderne tecniche di sviluppo.
Nonostante i numerosi vantaggi, non mancano alcune note negative. Attualmente Zend Framework non dispone di una Command Line Interface evoluta. Il supporto allo scaffolding è limitato, la scelta di dare poco spazio al paradigma convention-over-configuration potrebbe non corrispondere alle abitudini di alcuni sviluppatori.
Zend Framework è un prodotto open source. È possibile contribuire segnalando problemi o suggerimenti nel sistema di sviluppo ufficiale. Chiunque può proporre un nuovo componente o aiutare lo sviluppo di uno esistente. Infine, è possibile partecipare alla traduzione italiana delle risorse e della documentazione.
Il sito ufficiale di Zend Framework contiene numerose risorse utili. La documentazione ufficiale è il primo punto di partenza per scoprire il funzionamento di un componente. Il wiki contiene idee, discussioni ed approfondimenti. Esistono poi numerosi siti e blog, che contengono articoli e tutorial, non ultimo HTML.it