Framework PHP: Symfony vs Zend

Lunedì 3 Dicembre 2007 - 11:26

di Simone Carletti

PHP e Open Source

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.

Tags:

Categoria: PHP e Open Source | Permalink

Commenti

1

È buffo poiché compararli, a mio avviso, è quasi un errore. Zend framework e Symfony si sovrappongono in pochissimi ambiti e potrebbero quasi essere complementari.

qualche tempo fa qualcuno confrontava PHP5 e RubyOnRails…

# - postato da NoWhereMan - 03 Dicembre 2007 - 12:24

2

Non li ho mai provati, ma per ora sto bene con CakePHP.

# - postato da Slam - 03 Dicembre 2007 - 12:29

3

Volevo sapere, se puoi spiegarlo, che differenze ci sono con Cake. A parte il fatto che non usa espressamente PHP 5.
Grazie anticipatamente.

# - postato da caruso_g - 03 Dicembre 2007 - 12:36

4

Questa è una interessante comparativa di 10 Framework per PHP, certo solo indicativa ma che comunque da un’idea:

http://www.phpit.net/article/t.....rameworks/

In ogni caso provare resta sempre il modo migliore per capire.

# - postato da Slam - 03 Dicembre 2007 - 13:55

5

Ero io quel qualcuno! :D
Io finora ho usato solo symfony, ma sono curioso di provarlo in parallelo al Zend Framework.

Comunque sono completamente d’accordo con te, sono due lavori completamente diversi. Zend Framework è una raccolta di librerie, ed utilizzarlo per realizzare un’applicazione MVC completa senza una base secondo me è sconsigliato..

# - postato da lloyd27 - 03 Dicembre 2007 - 14:02

6

Mi chiedo se qualche framework utilizza un ORM che in qualche modo supporti l’ereditarietà delle tabelle del DB con partizionamento verticale (class table inheritance)…

Per ora ho guardato CakePHP e non lo supporta.

Cmq sono d’accordo sul fatto che il confronto Zend< ->Symfony sia un po’ azzardato…

# - postato da Epper - 03 Dicembre 2007 - 17:26

7

@lloyd27 : hmmm, no io l’avevo letto su slashdot mi pare

# - postato da NoWhereMan - 03 Dicembre 2007 - 20:31

8

Io uso con grande soddisfazione CakePHP!!
Ho fatto un po’ di fatica all’inizio per comprendere l’MVC, ma non l’avevo mai incontrato prima. Purtroppo non ho provato altri framework: ho scelto direttamente cake per vari motivi, tra cui il supporto a php<5 (il mio provider ha aggiornato solo di recente), una buona e completa documentazione, una comunità attiva..

# - postato da Carlo - 04 Dicembre 2007 - 00:47

9

Io sono un grande fan di Zend Framework. Ha una curva di apprendimento un po’ alta, quantomeno volendo impostare tutta l’applicazione su di esso e seguendo le best practices che si trovano (ancora troppo poche!) in rete, ma poi il mantenimento del codice diventa una questione triviale.

# - postato da paperogiallo - 04 Dicembre 2007 - 11:49

10

Leggo questo tuo articolo mentre cerco info su ZF, e la cosa mi sconcerta un pò…

Sai farmi un esempio pratico del perchè usi entrambi i FW? Non conosco Symfony e non capisco che senso abbia usarli entrambi.

Vedo che ci sono pure diverse estensioni per Smarty ma mi chiedo se sia realmente utile utilizzare prodotti esterni in quanto Zend mi sembra abbastanza completo.

# - postato da AdamQuadmon - 24 Maggio 2008 - 18:24

11

Ciao a tutti sono un attento lettore di questo “blog”, sono un programmatore web, attualmente uso un framework mvc creato da me, pero ora ho il bisogno di cambiare stavo pensando a Zend qualcuno di voi sa darmi indirizzi per trovare dei tutorial o guide ???
grazie.

# - postato da roberto - 07 Maggio 2009 - 17:35

12

ciao,
qualcuno di voi ha mai provato recessframework.org?
Rispetto ad altri mvc per php è molto leggero e supporta le annotation.

# - postato da francescoagati - 07 Giugno 2010 - 21:17

Inserisci il tuo commento:





(puoi usare i seguenti tag HTML per formattare il testo -
a href, b, i, br/, p, strong, em, ul, ol, li, blockquote, pre):

 

Anteprima del commento