Jump to content
Sign in to follow this  
Antonio

Zend Framework ed altri framework per PHP

Recommended Posts

Ciao a tutti, ho un grosso progetto da seguire, conosco qualcosa di php ma non ci ho mai programmato ad oggetti.. pensavo visto che c'ero di usare zend framework per utilizzare la struttura mvc.. e magari avere la possibilità futura di riutilizzare parte del codice che andrò a fare.

 

sto cercando un hosting.. ma io di hosting non mi intendo..ho chiesto consiglio nella sezione

WebHosting - Primi passiHosting sito annunci (mi serve proprio qualche consiglio)

Se qualcuno ha voglia di darmi una mano.. gliene sarei grato.

 

Volevo anche chiedere se per voi usare zend è difficile.. vorrei usarlo..ma sono un preoccupato anche perchè ho delle tempistiche da rispettare, diciamo 40 giorni per farne una prima parte con registrazione, inserimento annunci e ricerca degli stessi. (vedi discussione hosting)

Share this post


Link to post
Share on other sites

Ciao,

 

ZF (Zend Framework) e` un framework di basso livello, nel senso che non ha un ORM e le sue funzionalita` sono piu` orientate ad essere usate anche singolarmente (low coupling), come una qualsiasi libreria. ZF ti puo` tornare utile per imparare la programmazione OOP, visto che fa largo uso di interfaccie, classi astratte ed anche di vari livelli di ereditarieta`. Ha una sua curva di apprendimento pero` non credo che il MVC base sia difficile da imparare. Personalmente trovo le soluzioni che offre complicate ed delle volte inutili, con bug ed anche concettualmente sbagliate. Per esempio la libreria delle ACL non da` una vera soluzione per la gestione dei permessi, ma da delle classi che ci possono aiutare a farlo, be` io alla fine ho finito per levarmelo dalle @@ e con 3 o 4 tabelle ed una classe mi son fatto quello che volevo. La libreria REST e` concettualmente sbagliata, perche` non e` REST ma e` una specie di RPC over HTTP, quindi chi l'ha fatta non ci capiva nulla di REST.

 

Se vuoi qualcosa di buono per uno sviluppo rapido Symfony sembra essere il piu` usato. Personalmente ho trovato interessante Recess PHP Framework, ha un suo ORM semplice, MVC, REST (quello vero) e non sembra difficile da imparare, almeno piu` facile di Symfony. Se vuoi qualcosa di semplice esiste Slim Framework for PHP 5, derivato dall'idea del micro framework Sinatra (Ruby). Slim ti da un router dove mappi gli URL a dei metodi, dove dentro ai metodi puoi caricare i dati e fare il rendering in una template, ma dati (Modelli) e views (viste/template) sono lasicati a te per essere organizzati.

 

Se fossi nella tua situazione userei Slim per la parte C (controller) di MVC, le viste (V) te li metti nella cartella views ed i models (M) ti fai una cartella models e ci metti le query usando un DB abstraction layer tipo ADODB oppure un ORM (meglio) come PHPDataMapper.

Share this post


Link to post
Share on other sites
Ciao,

 

ZF (Zend Framework) e` un framework di basso livello, nel senso che non ha un ORM e` le sue funzionalita` sono piu` orientate ad essere usate anche singolarmente (low coupling), come una qualsiasi libreria. ZF ti puo` tornare utile per imparare la programmazione OOP, visto che fa largo uso di interfaccie, classi astratte ed anche di vari livelli di ereditarieta`. Ho una sua curva di apprendimento pero` non credo che il MVC base sia difficile da imparare. Personalmente trovo le soluzioni che offre complicate ed delle volte inutili, con bug ed anche concettualmente sbagliate. Per esempio la libreria delle ACL non da` una vera soluzione per la gestione dei permessi, ma da delle classi che ci possono aiutare a farlo, be` io alla fine ho finito per levarmelo dalle @@ e con 3 o 4 tabelle ed una classe mi son fatto quello che volevo. La libreria REST e` concettualmente sbagliata, perche` non e` REST ma e` una specie di RPC over HTTP, quindi chi l'ha fatta non ci capiva nulla di REST.

 

Se vuoi qualcosa di buono per uno sviluppo rapido Symfony sembra essere il piu` usato. Personalmente ho trovato interessante Recess PHP Framework, ha un suo ORM semplice, MVC, REST (quello vero) e non sembra difficile da imparare. Se vuoi qualcosa si semplice esiste Slim Framework for PHP 5, derivato dall'idea del micro framework Sinatra (Ruby). Slim ti da un router dove mappi gli URL a dei metodi, dove dentro ai metodi puoi caricare i dati e fare il rendering in una template, ma dati (Modelli) e views (viste/template) sono lasicati a te.

 

Se fossi nella tua situazione userei Slim per la parte C (controller) di MVC, le viste (V) te li metti nella cartella views ed i models (M) ti fai una cartella models e ci metti le query usando un DB abstraction layer tipo ADODB oppure un ORM (meglio) come PHPDataMapper.

 

Anche io ho abbandonato lo ZF MVC, mi son fatto un sistema MVC molto leggero per i piccoli lavori ed uso symfony2 per tutto il resto.

 

A Pandax consiglierei l'uso di Symfony2 :)

Share this post


Link to post
Share on other sites
Anche io ho abbandonato lo ZF MVC, mi son fatto un sistema MVC molto leggero per i piccoli lavori ed uso symfony2 per tutto il resto.

 

A Pandax consiglierei l'uso di Symfony2 :)

 

 

Oddio.. ammetto di aver capito 1/10 di quello che mi avete suggerito.. "ignoranza galoppante.."

Io "non so proprio nulla di mvc.. oop.. ecc." so un po di php con cui ho costruito negli anni diversi sitarelli neanche tanto brutti.

Ma visto che mi è stato richiesto un progetto piuttosto importante, pensavo avendone sentito parlare di usare MVC...

da qui sono arrivato a capire che devo scegliere un Framework.. solo che in PHP i framework sono mille.. quale scegliere?

Leggendo qua e la avevo finito per scegliere CodeIgniter (senza conoscerlo) avendo sentito che era abbastanza semplice e avevo trovato qualche tutorial in italiano che non andava certo male.

Poi però leggendo qua e la.. ho trovato che Zend sarebbe molto più completo anche se un po' più difficile e sicuramente è un progetto che bene o male non verrà mai abbandonato (altra preoccupazione nella scelta).

Ora voi mi consigliate.. Symfony2... ehmm.. aiutoooo

Vedete la mia paura è iniziare una cosa con un framework che poi magari all'improvviso mi muore perchè non lo aggiornano più.

La mia scelta quindi sarebbe indirizzata:

- a qualcosa di sicuro..

- a qualcosa con forum guide e tutorial in italiano..(magari)

- a qualcosa di completo.. così da non trovarmi a dire.. cavolo manca questo.. era meglio scegliere l'altro.

 

Oltretutto ora sto cercando un hosting.. e non so da che parte guardare perchè di hosting me ne intendo ancora meno..(se volete potete guardare la discussione in "hosting primi passi")

 

PS ringrazio rtacconi per la risposta... ma possibilimente vorrei scegliere una cosa all inclusive o quasi.. già mi perderò a cercare di imparare a fare un sito con "sti framework"... in effetti son leggermente preoccupato.. sai le tempistiche.. ma volevo anche fare qualcosa di fatto un po' meglio... insomma aggiornarmi un minimo.

Share this post


Link to post
Share on other sites

Probabilmente come dice antonio Symfony2 e` una buona opzione, anche perche` e` uno dei piu` famosi. Io preferisco Recess, ma sicuramente e` meno conosciuto anche se non credo che sara` abbandonato. CodeIgniter e` molto basi per quello che offre, poi ha anche un fork, Kohana (credo), ma a Kohana preferirei Zend, almeno e` famoso e come librerie ne ha di piu`. Se non sai l'inglese ti trovarai in difficolta`, sempre. Prova qui: Guida Symfony | Guide PHP | Php.HTML.it magari chi usa symfony ti puo` indirizzare a qualche risorsa italiana. Esiste anche il Grusp, il gruppo italiano utenti PHP che ti puo` aiutare.

 

Ultima cosa, potresti considerare anche Drupal, il quale non e` OOP e MVC, anche se dalla versione 7 stanno cambiando qualcosa. Drupal e` un CMS ma ha anche un sistema modulare potente e potrebbe avere un modulo per quello che ti serve, ha gia` un sistema di autenticazione ed autorizzazione funzionante, anche se ha una discreta curva di apprendimento.

 

Per l'hosting uso server virtuali su Amazon e Linode, ma non fanno al caso tuo. Di hosting a livello italiano non saprei aiutarti. Usa Aruba solamente se avrai poco traffico. Sicuramente di ci vuole su hosting condiviso (facile da gestire). Se hai un budget piu` alto potresti scegliere un server managed, dove un amministratore pensa alla gestione tecnica.

Share this post


Link to post
Share on other sites
Oddio.. ammetto di aver capito 1/10 di quello che mi avete suggerito.. "ignoranza galoppante.."

Io "non so proprio nulla di mvc.. oop.. ecc." so un po di php con cui ho costruito negli anni diversi sitarelli neanche tanto brutti.

Ma visto che mi è stato richiesto un progetto piuttosto importante, pensavo avendone sentito parlare di usare MVC...

da qui sono arrivato a capire che devo scegliere un Framework.. solo che in PHP i framework sono mille.. quale scegliere?

Leggendo qua e la avevo finito per scegliere CodeIgniter (senza conoscerlo) avendo sentito che era abbastanza semplice e avevo trovato qualche tutorial in italiano che non andava certo male.

Poi però leggendo qua e la.. ho trovato che Zend sarebbe molto più completo anche se un po' più difficile e sicuramente è un progetto che bene o male non verrà mai abbandonato (altra preoccupazione nella scelta).

Ora voi mi consigliate.. Symfony2... ehmm.. aiutoooo

Vedete la mia paura è iniziare una cosa con un framework che poi magari all'improvviso mi muore perchè non lo aggiornano più.

La mia scelta quindi sarebbe indirizzata:

- a qualcosa di sicuro..

- a qualcosa con forum guide e tutorial in italiano..(magari)

- a qualcosa di completo.. così da non trovarmi a dire.. cavolo manca questo.. era meglio scegliere l'altro.

 

Oltretutto ora sto cercando un hosting.. e non so da che parte guardare perchè di hosting me ne intendo ancora meno..(se volete potete guardare la discussione in "hosting primi passi")

 

PS ringrazio rtacconi per la risposta... ma possibilimente vorrei scegliere una cosa all inclusive o quasi.. già mi perderò a cercare di imparare a fare un sito con "sti framework"... in effetti son leggermente preoccupato.. sai le tempistiche.. ma volevo anche fare qualcosa di fatto un po' meglio... insomma aggiornarmi un minimo.

 

Symfony ha una community dietro ENORME, quindi che muoia la vedo molto molto difficile. E' fatto molto bene e, per uno che è abituato a certi standard e proviene da framework più strutturati del mondo java, usare Symfony2 non è molto traumatico.

 

Comunque, se non conosci l'inglese e vuoi fare lo sviluppatore software, fai prima a cambiare mestiere, detto spassionatamente :)

Share this post


Link to post
Share on other sites

Io utilizzo codeigniter da un pò di tempo, è molto più leggero e semplice da gestire rispetto zend.

La documentazione è a mio avviso perfetta in quanto è molto intuitiva con qualche tutorial incluso nelle prime parti, in italiano non sò quante cose troverai ma con un minimo di inglese si capisce benissimo come funziona.

DI contro non ha un acl o un auth incluso, per cui dovresti programmarlo da te, anche se nel forum di codeigniter ne trovi alcuni pronti all'uso in base alle tue necessità.

Comunque zend può essere usato come una libreria anche all'interno di codeigniter se ne hai bisogno.

 

La cosa migliore sarebbe provarli tutti e vedere con quale ti trovi meglio. I framework più famosi non credo moriranno da un giorno all'altro.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×