Slide 1

Slide 1 text

Zend Framework 2 per lo sviluppo di applicazioni web Enrico Zimuel enrico@zend.com – Zend Technologies

Slide 2

Slide 2 text

Nome speaker Mail speaker – company or community Mi presento Enrico Zimuel (@ezimuel) Programmatore dal 1996 Senior PHP Engineer presso Zend Technologies, nel team di sviluppo di Zend Framework Speaker conferenze internazionali Co-fondatore PHP User Group Torino Co-autore “PHP Best Practices” FAG, 2012

Slide 3

Slide 3 text

Nome speaker Mail speaker – company or community Più di un terzo del web è scritto in PHP Fonte: http://trends.builtwith.com/framework E' il quarto linguaggio più utilizzato in assoluto dopo C, Java e C++ Fonte: http://langpop.com/ E' il linguaggio server side più utilizzato sul web Fonte: http://trends.builtwith.com/framework Più di 2 milioni di sviluppatori professionisti Fonte: Gartner Research

Slide 4

Slide 4 text

Nome speaker Mail speaker – company or community Chi utilizza il PHP?

Slide 5

Slide 5 text

Nome speaker Mail speaker – company or community Perchè utilizzare il PHP? ● Estrema facilità d'utilizzo ● Altissima produttività ● Linguaggio maturo ● Enterprise ready ● Community estesa

Slide 6

Slide 6 text

Nome speaker Mail speaker – company or community Zend Framework ● PHP framework, licenza New BSD ● OOP, Unit test ● Progetto fondato nel 2006 ● ZF1 > 15 milioni download ● Versione attuale 2.0.4 ● PHP ≥ 5.3.3 ● http://framework.zend.com

Slide 7

Slide 7 text

Nome speaker Mail speaker – company or community Nuova architettura ZF2 ● Riscrittura del framework ● Aspect Oriented Design ● Dependency Injection ● Architettura MVC event-driven ● Supporto dei Moduli ● Package (composer, pyrus) ● Performance (lazy loading)

Slide 8

Slide 8 text

Nome speaker Mail speaker – company or community MVC

Slide 9

Slide 9 text

Nome speaker Mail speaker – company or community bootstrap Listeners Richiesta HTTP Risposta HTTP route Listeners dispatch Listeners Architettura MVC

Slide 10

Slide 10 text

Nome speaker Mail speaker – company or community Tipica applicazione MVC

Slide 11

Slide 11 text

Nome speaker Mail speaker – company or community Zend\ServiceManager ● ServiceManager implementa il design pattern Service Locator ● Un Service Locator è un oggetto nel quale possono essere registrati servizi (oggetti) che verranno recuperati successivamente ● Gestito tramite configurazioni

Slide 12

Slide 12 text

Nome speaker Mail speaker – company or community Moduli in ZF2 ● Un modulo è una qualsiasi porzione di codice che risolve un problema specifico ● Sono porzioni indipendenti, riutilizzabili in altri progetti (plug and play) ● Un namespace, file Module.php ● http://modules.zendframework.com/

Slide 13

Slide 13 text

Nome speaker Mail speaker – company or community modules.zendframework.com

Slide 14

Slide 14 text

Nome speaker Mail speaker – company or community Scheletro di un'applicazione MVC in ZF2

Slide 15

Slide 15 text

Nome speaker Mail speaker – company or community config data module public vendor Applicazione in ZF2

Slide 16

Slide 16 text

Nome speaker Mail speaker – company or community config autoload global.php local.php application.config.php data module public vendor

Slide 17

Slide 17 text

Nome speaker Mail speaker – company or community application.config.php

Slide 18

Slide 18 text

Nome speaker Mail speaker – company or community config data module Application ... public vendor

Slide 19

Slide 19 text

Nome speaker Mail speaker – company or community Modulo Application config module.config.php src Application Controller Model view Module.php

Slide 20

Slide 20 text

Nome speaker Mail speaker – company or community Module.php

Slide 21

Slide 21 text

Nome speaker Mail speaker – company or community module.config.php (routing)

Slide 22

Slide 22 text

Nome speaker Mail speaker – company or community module.config.php (view)

Slide 23

Slide 23 text

Nome speaker Mail speaker – company or community config data module public img css js .htaccess index.php vendor

Slide 24

Slide 24 text

Nome speaker Mail speaker – company or community .htaccess

Slide 25

Slide 25 text

Nome speaker Mail speaker – company or community index.php

Slide 26

Slide 26 text

Nome speaker Mail speaker – company or community config data module public vendor zendframework Librerie esterne

Slide 27

Slide 27 text

Nome speaker Mail speaker – company or community Composer ● Progetto open source per la gestione delle dipendenze tra librerie PHP ● Configurazione tramite file in formato json ● E' diventato uno standard de facto nella community PHP ● http://getcomposer.org/

Slide 28

Slide 28 text

Nome speaker Mail speaker – company or community Esempio: composer.json

Slide 29

Slide 29 text

Nome speaker Mail speaker – company or community packagist.org

Slide 30

Slide 30 text

Nome speaker Mail speaker – company or community Composer e ZF2 ● E' possibile installare ZF2 tramite composer: ● Installazione di singoli componenti:

Slide 31

Slide 31 text

Nome speaker Mail speaker – company or community Esempio di applicazione ZF2: https://github.com/zendframework/zf2-tutorial Documentazione ZF2: http://framework.zend.com/learn Riferimenti

Slide 32

Slide 32 text

Nome speaker Mail speaker – company or community Grazie! Per maggiori informazioni: http://framework.zend.com