Come tutti gli sviluppatori sanno, imparare a padroneggiare un linguaggio richiede un certo tempo e una cospicua dose di fatica, per questo motivo negli ultimi tempi hanno avuto sempre più successo gli ambienti di sviluppo preconfezionati, che semplificano almeno i passi introduttivi del linguaggio e facilitano i primi test. Naturalmente per applicazioni complesse di un certo livello, questi “pacchetti” non possono soddisfare in pieno le esigenze di sviluppatori adulti, ma sono comunque molto funzionali.
L’idea dietro al concetto di framework è quella di offrire un livello di sviluppo utilizzabile in più applicazioni: applicazioni anche molto diverse negli scopi hanno un certo numero di funzionalità comuni (ad esempio nell’interfaccia con il database o in quella grafica con l’utente), che si ripetono da una all’altra. A chi programma in
PHP — ma capita in ogni linguaggio di programmazione — sarà capitato di costruirsi delle librerie di funzioni e di riciclarle in progetti diversi. Un framework è ideato per provvedere ad una struttura solida e robusta per questi elementi comuni in modo da risparmiare tempo nello sviluppo. In questo senso si rientra nell’ottica del
Model, View, Controller (MVC) di moda negli ultimi anni.
Nel primo di una serie di sei articoli al riguardo,
Duane O'Brien, sviluppatore
PHP freelance, introduce i concetti fondamentali di tre tra i più famosi framework per
PHP:
Zend,
symfony e
CakePHP, con l’ambizioso scopo di mettere insieme tutte le informazioni necessarie per cominciare a lavorare con i framework.
La serie di articoli comprende una
parte 1 che introduce i framework citati, la loro installazione e una prima applicazione da utilizzare come test di confronto; una
parte 2 che spiega come costruire una semplice applicazione in tutti e tre gli ambienti evidenziando similarità e differenze; la
parte 3 che tratta l’estensione dell’applicazione di test mettendone alla prova la robustezza nelle situazioni critiche; una
parte 4 che focalizza l’attenzione su AJAX e su come viene trattato dai tre ambienti; e infine la
parte 5 con l’implementazione di codice esternamente al framework (nello specifico uno script di aggiornamento notturno) realizzato e integrato in tutte e tre le versioni.
Per il momento è disponibile solo il primo articolo, comunque corposo e denso di informazioni. L’articolo parte con i prerequisiti per l’ambiente di sviluppo che, in linea di massima, coincidono con quello classici di ogni sviluppatore: un server locale (
Apache), un’installazione di
PHP v.5.1.4, una versione abbastanza recente di
MySQL (v. 5.0.37) e un sistema operativo che supporti tutti questi elementi, per poi proseguire con le installazioni di tutti e tre i framework. Essi infatti rientrano nella categoria "
The One They've Been Talking About", ovvero dei più famosi e questo è uno dei motivi per cui sono stati scelti. L’autore tiene comunque a precisare che è opportuno, per tutti coloro che vogliono davvero documentarsi, provare a lavorare anche con tutti gli altri esistenti in circolazione.
Il lungo articolo di
O'Brien prosegue poi con alcuni accorgimenti durante la fase di installazione dei pacchetti e la creazione di una piccola applicazione test, che permette di postare un messaggio di testo all’applicazione utilizzando una
text area, salvarlo nel database e recuperarlo, visualizzandolo a richiesta (anche in modifica), e che l’autore ha chiamato
Blahg. L’intero percorso è decisamente interessante e permette di avere un’idea piuttosto chiara di come cominciare a lavorare con i frame work.