Per progetti di una certa complessità l’uso di Symfony può aiutare, e non poco, uno sviluppatore PHP. Ho studiato Symfony circa un anno fa, ma già da un po’ di tempo soffrivo l’eccessivo uso della console e il fastidio di dover mettere mano più a file yaml che a codice PHP. Mi sono guardato attorno, mi sono messo a smanettare su progetti personali, sono passato a Django e infine ho ceduto al consiglio di un amico rubysta che mi consigliava CakePHP.

La learning curve di questo simpatico framework è eccezionale. In un paio di giorni si riesce a padroneggiarlo in modo da poter mettere su una piccola applicazione dotata di tutti i meccanismi necessari per essere rilasciato in ambiente di produzione. Le performance mi sembrano buone, ma non ho avuto modo di testarle a fondo. A occhio comunque dovrebbe risultare più leggero di Symfony e più scattante. Assomiglia a Django e, fidandomi del rubysta, linguaggio che non conosco, assomiglia parecchio a Rails.

In questi giorni ho avuto modo di apprezzare che i tempi di sviluppo sono più corti rispetto al corrispettivo in Symfony. E, parere del tutto personale, mi diverto di più a smanettare su codice PHP piuttosto che sui file yaml che accompagnano lo sviluppo in Symfony.

Ho letto diversi pezzi che presentano CakePHP in modo sicuramente superficiale, descrivendolo semplicisticamente. Il che non corrisponde al vero. Almeno nell’ultima release stabile che ho per le mani posso affermare di non sentire la mancanza di certi meccanismi in Symfony. Certo il numero di plugin di cui dispone quest’ultimo è incommensurabile rispetto a CakePHP, ma penso si riesca benissimo a supplire con una buona progettazione del codice e magari la scrittura di librerie proprie.

A primo impatto ho nelle directory solo e soltanto i file che mi servono davvero e riesco ad avere un quadro d’insieme che in Symfony non era così chiaro.

Devo ancora approfondire il capitolo sicurezza, ma ho letto buone cose su validazione e sanitization dei dati, su ACL e sessioni. I primi giudizi non possono che essere positivi, dunque. Ho intenzione di provarlo fra qualche settimana su un mini portale che non richiede uno sviluppo particolarmente complesso. Soprattutto voglio capire se scala bene su una VPS e quanto traffico è in grado di supportare senza risentirne in termini di banda e reattività.

Non ho ancora preso contatto con la comunità italiana, per cui sono curioso di conoscere le vostre opinioni su questo framework. Le mie impressioni iniziali sono esatte?