Zend Framework - Steve Maraspin

Transcription

Zend Framework - Steve Maraspin
Primi passi con
Zend Framework
Pordenone, 22/10/2011
Ing. Stefano Maraspin
[email protected]
http://www.mvassociati.it
www.twitter.com/maraspin
www.linkedin.com/maraspin
Linux Day 2011 – Pordenone
Ing. Stefano Valle
[email protected]
http://www.mvassociati.it
www.twitter.com/stefanovalle
http://www.linkedin.com/in/vallestefano
Chi siamo
2
Stefano Maraspin
Stefano Valle
- PHP
- Architetture Software
- User Experience
Design
- PHP
- Progettazione Software
- RDBMS/NoSQL
Membri: PHP User Group Friuli
http://friuli.grusp.org/
Linux Day 2011 – Pordenone
Fondato grazie al supporto del
http://www.grusp.org/
E chi di voi...
●
conosce/usa PHP?
●
conosce/usa Zend Framework?
●
… o magari qualche altro framework?
Linux Day 2011 – Pordenone
3
Vantaggi di usare un framework
●
●
●
●
Favorito il Riuso (non si reinventa la
ruota)
Separazione della responsabilità
Impiego di Pattern (facilità condivisione
conoscenza)
Maggiore “controllo” e possibilità di
Testing
Linux Day 2011 – Pordenone
4
Vantaggi di usare un framework
●
Sviluppo più rapido (investimento
iniziale)
●
Maggior qualità
●
Si è più produttivi
Linux Day 2011 – Pordenone
5
Cosa ci offre Zend Framework
●
Gestione delle funzionalità più comuni
●
Fondamenti per una buona architettura (MVC)
●
Numerosi moduli utilizzabili anche come librerie
●
Copiosa documentazione
●
Comunità di sviluppatori
●
Certificazione
Linux Day 2011 – Pordenone
6
Chi lo usa?
Linux Day 2011 – Pordenone
7
Argomenti di Oggi
●
Introduzione Ai Concetti
●
Demo
●
Cos'altro c'è?
●
Zend Framework 2
●
Note Conclusive
Linux Day 2011 – Pordenone
8
Frame.. che?
9
http://www.flickr.com/photos/kalavinka/4617897952/in/photostream/
Linux Day 2011 – Pordenone
...e cos'è Zend Framework?
Zend Framework is a simple, straightforward,
open-source software framework for PHP 5
designed to eliminate the tedious details of coding
and let you focus on the big picture.
Its strength is in its highly-modular MVC design,
making your code more reusable
and easier to maintain.
Linux Day 2011 – Pordenone
10
...e cos'è Zend Framework?
11
Zend Framework is a simple, straightforward,
open-source software framework for PHP 5
designed to eliminate the tedious details of coding
and let you focus on the big picture.
Its strength is in its highly-modular MVC design,
making your code more reusable
and easier to maintain.
Linux Day 2011 – Pordenone
Partiamo da...
Linux Day 2011 – Pordenone
12
...un gran casino!
http://www.flickr.com/photos/kalavinka/4623702230/in/photostream/
Linux Day 2011 – Pordenone
13
Tutto dappertutto
Linux Day 2011 – Pordenone
14
Miglioriamo il Page Controller con Librerie
Linux Day 2011 – Pordenone
15
Ci sono ancora codice duplicato, ruoli
confusi...
http://www.flickr.com/photos/kalavinka/4613917813/in/photostream/
Linux Day 2011 – Pordenone
16
Application logic in ogni pagina
Linux Day 2011 – Pordenone
17
Arriva l'MVC in aiuto...
Linux Day 2011 – Pordenone
18
Siamo contenti, stiamo per “spiccare il
volo”
http://www.wealthforteens.com/quotes/200-awesome-happiness-quotes/
Linux Day 2011 – Pordenone
19
MVC
20
http://www.symfony-project.org/jobeet/1_2/Doctrine/it/04
Linux Day 2011 – Pordenone
Argomenti di Oggi
●
Introduzione Ai Concetti
●
Demo
●
Cos'altro c'è?
●
Zend Framework 2
●
Note Conclusive
Linux Day 2011 – Pordenone
21
1. Procurarsi l'ultima release di ZF
●
●
Vers. 1.11.11 (ad oggi la più recente):
http://framework.zend.com/download/latest
Per chi vuole cimentarsi... c'è la vers. 2.0.0beta1:
http://packages.zendframework.com/, ma ne
parliamo dopo...
Linux Day 2011 – Pordenone
22
1b. Usare un buon tutorial
●
●
Getting Started with Zend Framework (by Rob
Allen): uno dei migliori tutorial step-by-step per
iniziare con ZF!
Scaricabile a questo indirizzo:
http://akrabat.com/zend-framework-tutorial/
Linux Day 2011 – Pordenone
23
2. Prerequisiti
●
●
PHP >= 5.2.4
Un server web che supporti il mod_rewrite, nel caso
di apache (o qualcosa di analogo)
Linux Day 2011 – Pordenone
24
25
Passiamo al codice!
Linux Day 2011 – Pordenone
Argomenti di Oggi
●
Introduzione Ai Concetti
●
Demo
●
Cos'altro c'è?
●
Zend Framework 2
●
Note Conclusive
Linux Day 2011 – Pordenone
26
Inside ZF!
Linux Day 2011 – Pordenone
27
Argomenti di Oggi
●
Introduzione Ai Concetti
●
Demo
●
Cos'altro c'è?
●
Zend Framework 2
●
Note Conclusive
Linux Day 2011 – Pordenone
28
ZF2
●
●
Nuova major release
Zend Framework 2.0.0beta1
(rilasciato il 18 ottobre)
●
NON retrocompatibile!
●
Prerequisiti: PHP >= 5.3
Linux Day 2011 – Pordenone
29
ZF2 (2)
●
●
●
●
Consistenza
Performance
(riscritto autoload)
Documentazione
(dicono migliorata...)
Funzionalità
(DI, supporto servizi cloud, Event Manager, ...)
Linux Day 2011 – Pordenone
30
Iniziare con ZF2
●
●
Anche in questo caso... consigliamo la nuova
versione del tutorial di Rob Allen:
http://akrabat.com/zf2t/
Si può già sfruttare qualcosa in ZF1: Class-Map
Autoloading (+25% di performance rispetto a ZF1,
che arrivano a 60-85% con opcode caching)
Linux Day 2011 – Pordenone
31
Argomenti di Oggi
●
Introduzione Ai Concetti
●
Demo
●
Cos'altro c'è?
●
Zend Framework 2
●
Note Conclusive
Linux Day 2011 – Pordenone
32
“Integrazioni” a ZF
●
Service layer
●
Integrazione di ORM esterno (Doctrine 2)
●
Multimodulo / multilingua
●
●
Libreria di componenti per framework (elementi
form, plugin, helpers, …)
Adapter di autenticazione (base, doctrine)
Linux Day 2011 – Pordenone
33
Ma perchè devo usare un framework per sviluppare in PHP?
●
Non è “obbligatorio”
●
Alcune volte infatti ha poco senso
●
●
●
Piccoli script per console
●
Siti con minima interattività
●
...avete capito ;-)
Ci sono comunque strade alternative...
http://silex.sensiolabs.org/
Considerare il problema prima, poi il tool
Linux Day 2011 – Pordenone
34
Risorse
●
●
●
Sito Web Zend Framework
http://framework.zend.com
Zend Developer Zone
http://devzone.zend.com/
Blogs:
●
●
Matthew Weier O'Phinney
http://weierophinney.net/matthew/
Rob Allen
http://akrabat.com/
Linux Day 2011 – Pordenone
35
Tutto chiaro?
Dubbi, Domande?
Linux Day 2011 – Pordenone
36
37
Grazie a tutti per l'attenzione
●
Se volete saperne di più, passate a trovarci:
http://friuli.grusp.org/
...o seguiteci su
@maraspin
Linux Day 2011 – Pordenone
witter
@stefanovalle