Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Quale framework PHP utilizzare?

Quale framework PHP utilizzare?

Simone Carletti

April 18, 2008
Tweet

More Decks by Simone Carletti

Other Decks in Programming

Transcript

  1. Quale Framework PHP utilizzare? Tutti o nessuno? Workshop Zend Italia:

    Il PHP Diventa Grande È disponibile Zend Framework 1.5 Roma, 18 Aprile 2008 Simone Carletti www.simonecarletti.com [email protected]
  2. Due parole di presentazione •  Technical Manager in Altura Labs

    Srl (www.alturalabs.com) •  Zend Framework contributor (weppos) •  Autore per HTML.it –  <edit> –  PHP, ASP, XML, WebMarketing, Database, Server –  ICTv.it •  Membro dell’RSS Advisory Board (www.rssboard.org) •  Autore www.zend-framework.it
  3. Contenuti •  Introduzione ai framework •  Principali framework •  PHP

    framework •  3 framework a confronto –  CakePHP –  Symfony –  Zend Framework •  Approfondimenti
  4. Introduzione ai framework •  Che cos’è un framework? –  Collezione

    di librerie –  Raccolta di strumenti ed elementi utili per lo sviluppo •  Diversi tipi di framework –  Application framework –  Web framework •  Un framework non è un CMS!
  5. Perchè usare un framework? •  Aumento della produttività •  Soluzioni

    già pronte ai problemi comuni •  Manutenzione del software •  Scalabilità •  Uniformità e standard •  Lo sviluppo è più divertente!
  6. Principali framework Ruby  on  Rails  (Ruby)   www.rubyonrails.org   Django

     (Python)   www.djangoproject.com   Twisted  Matrix  (Python)   www.twistedmatrix.com   Symfony  (PHP)   www.symfony-­‐project.org   CakePHP  (PHP)   www.cakephp.org   Zend  Framework  (PHP)   www.zendframework.co m   Spring  Framework  (Java)   www.springframework.org   ColdFusion  on  Wheels  (CF)   www.cfwheels.com   ...  e  mol'  altri!  
  7. Principali framework in PHP Symfony     www.symfony-­‐project.org   CodeIgniter

      www.codeigniter.com   Zend  Framework   www.zendframework.co m   CakePHP   www.cakephp.org   Prado   www.xisc.com   php  framework   PHP  4   PHP  5  
  8. Il miglior framework •  I framework sono molti •  Le

    scelte a disposizione sono numerose •  Come scegliere? •  Qual è il framework migliore? Sei  pronto  a  scoprire   il    framework  migliore?  
  9. Il miglior framework Il  framework  migliore  NON  esiste    

    Il  framework  peggiore  NON  esiste     Esiste  il  framework  più  adeguato     alle  nostre  esigenze  
  10. CakePHP · Symfony · Zend Framework •  Nelle prossime slide,

    a confronto i 3 web framework PHP più diffusi •  Comprenderne pregi e difetti aiuta a scegliere la soluzione più adatta per creare la nostra applicazione
  11. Caratteristiche a confronto CakePHP   Symfony   Zend  Framework  

    Versione   1.1.18.5850   1.0   1.5.1   Linguaggio   PHP  4   PHP  5   PHP  5   Licenza   MIT  License   MIT  License   New  BSD  License   RequisiX   PHP  4.3.2   PHP  5.1.4   PHP  5.1.4   MVC   Sì   Sì   Sì   i18n  e  l10n   Sì  (development)   Sì   Sì  
  12. Caratteristiche a confronto CakePHP   Symfony   Zend  Framework  

    Database   MySQL  4+,   PostgreSQL,  ADODB   A  seconda   dell’ORM.  Propel   supporta  i  DB  gesXX   da  PDO.   MySQL,  Oracle,  IBM   DB2,  Microsoa  SQL   Server,  PostgreSQL,   SQLite,    Informix   Dynamic  Server   Database  ORM   AcXve  Record   Pabern   Propel  /  Doctrine   Table,  Row,  Rowset   Database  MigraXon   Sì   No   No   ACL   Sì   No   Sì   Cache   Sì   Sì   Sì  (supporto  a   numerosi  backend)  
  13. Caratteristiche a confronto CakePHP   Symfony   Zend  Framework  

    Form   Sì   Sì   Sì   Helper   ?   Sì   Sì   Scaffolding   Sì   Sì   No   Skeleton   Rigido   Rigido   Flessibile   Plugin   Sì   Sì   Sì   CLI   Bake   Pake   No   Component   Dependency   Sì   Sì   Loosely   Logger   Plugin   Sì   Sì   Config  Manager   No   Sì   Sì   Web  Service   Limitato   Limitato   Eccellente   Feed   Plugin   Plugin   Sì  
  14. Caratteristiche a confronto CakePHP   Symfony   Zend  Framework  

    Vantaggi   • Supporto  a  PHP  4   • Framework  maturo   • Estremamente   developer  friendly   • OperaXvità   immediata   • CLI   • Admin  generator   • Alta  qualità  dello   sviluppo   • ComponenX   riuXlizzabili   Svantaggi   • Non   completamente   object  oriented   • Il  supporto  a  PHP  4   limita  l’uso  di   funzionalità  evolute   previste  solo  per  il  5   • Qualche  carenza   nelle  performance   • Integrazione  ORM   a  volte   confusionaria  o   macchinosa   • L’ORM  non   supporta  AcXve   Record  Pabern   • Supporto  limitato  a   funcXonal  test  
  15. Caratteristiche a confronto CakePHP   Symfony   Zend  Framework  

    A  chi  si  rivolge?   • Il  supporto  a  PHP  4   lo  rende  una  scelta   ideale,  quasi   obbligata,  per   mantenere   compaXbilità  con   versioni  precedenX.   Questa   caraberisXca  è,  allo   stesso  tempo,  il  suo   tallone  d’Achille.   • Oima  soluzione   per  l’immediata   produività,  per   costruire   applicazioni  con   elevata  interazione   o  parXcolare   esigenza  di   customizzazione   lato  front  end.   Meno   configurazioni,  più   convenzioni.   • Oima  soluzione   professionale.  La   curva  di   apprendimento  è   maggiore  rispebo   agli  altri,  ma   permebe  allo   sviluppatore  un   maggiore  controllo   su  ogni  aspebo   dell’applicazione.   Meno  convenzioni,   più  configurazioni.  
  16. Cosa si dice in giro? •  Google Trends •  www.google.com/trends

    •  Google Blog Search •  www.google.com/blogsearch •  Technorati •  www.technorati.com •  Wikipedia •  en.wikipedia.org •  HTML.it •  www.html.it , php.html.it, blog.html.it
  17. Grazie! Il framework è uno strumento, la conoscenza è la

    chiave per scegliere lo strumento migliore in ogni situazione.