Non ricordo più chi o quando, ma qualche tempo fa qualcuno mi "rimproverà" di non raccontare troppo riguardo ai framework per PHP, in particolare Zend e Symfony. àˆ vero, ma l'argomento è talmente vasto che certe volte si finisce per avere così tanto da dire da non dire mai nulla.
Oggi mi sono imbattuto in un post intitolato Symfony vs Zend che mette a confronto sul piano generale questi due framework per PHP 5, e ribadisco, solo esclusivamente per PHP 5.
Non aspettatevi grandi, lunghi e per certi versi inutili, test sulle performance. Non aspettatevi la risposta su chi è meglio e chi è peggio: l'articolo ripercorre le caratteristiche dei due framework in modo obiettivo lasciando a voi le conclusioni.
Personalmente, vorrei accodare all'articolo un paio di considerazioni personali.
Ho contribuito ad entrambi i progetti. Per Symfony un plugin e qualche patch nell'SVN, ironia della sorte legate all'integrazione con Zend; per Zend sono attualmente impegnato nello sviluppo di una libreria e sulla traduzione italiana.
Il migliore? Non l'ho ancora capito poiché normalmente li uso entrambi in contemporanea. L'interazione tra Symfony e Zend è questione di 3 configurazioni ed offre un risultato eccellente.
Mi piace considerare Zend Framework come una eccellente raccolta di librerie. La sua limitata dipendenza tra i moduli consente di caricare e scegliere di usare solo le librerie necessarie in un qualsiasi progetto, anche già esistente.
Symfony è invece un framework MVC fortemente strutturato, per certi versi più orientato ad essere il clone PHP di Rails. Questo lo rende difficilmente adottabile in parallelo con progetti esistenti, più facilmente il candidato per una ristrutturazione di un sito.
àˆ buffo poiché compararli, a mio avviso, è quasi un errore. Zend framework e Symfony si sovrappongono in pochissimi ambiti e potrebbero quasi essere complementari.
Symfony, da parte sua, lascia ampio spazio all'integrazione ed è "fornito di serie" con un plugin per interagire con Zend. Online sono disponibili tutorial per integrare Zend_View, utilizzare Zend_Db al posto della configurazione predefinita basata su Propel e creare feed con Zend_Feed.
Non fatevi quindi assalire dalla presunzione di voler trovare "il migliore". Trovate invece la soluzione pià adatta al vostro problema.