introduction à zend framework€¦ · introduction à zend framework gauthier delamarre – va...
TRANSCRIPT
![Page 1: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/1.jpg)
{Introduction à Zend Framework
Gauthier Delamarre – VA Consulting10 Novembre 2010
![Page 2: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/2.jpg)
{ A propos de … moi
●Développeur et architecte PHP depuis 1999●Certifié ZCE pour PHP5 et Zend Framework
●Journaliste informatique et blogueur●Responsable des services professionnels pour
VA Consulting (Luxembourg)●Vice-secrétaire de l'AFUP
![Page 3: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/3.jpg)
{Une (très) brève histoire de ZF● L'impulsion du projet et l'encadrement sont
fournis par Zend Technologies● Démarré en 2005, la version 1.0 du projet sort
en Juin 2007● Les versions principales suivantes ont été la 1.5
(ajout des Forms et Layouts) et la 1.8 (apparition de Zend_Application)
● « There's a fork in the road » : les branches 1.x et 2.x vont coexister
![Page 4: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/4.jpg)
{ Principales caractéristiques● Framework 100% objet
● Aucune variable globale● Aucune fonction globale● Aucune constante globale● Application de nombreux design patterns
– MVC + Front Controller– Adapters– Factories– ...
![Page 5: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/5.jpg)
{ Principales caractéristiques● Exploitation maximum de PHP 5
● Pas de compatibilité ascendante– PHP >= 5.1.4 jusqu'à la version 1.7– PHP >= 5.2.4 depuis– NOTE PHP < 5.3 dans les deux cas !
● Classes abstraites● Interfaces● SPL● Méthodes magiques
![Page 6: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/6.jpg)
{ Principales caractéristiques● « Business-friendly »
● Licence BSD● CLAs
– Individual CLA– Corporate CLA
![Page 7: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/7.jpg)
{ Concepts clés● Couplage faible
● Utilisation autonome des composants ● « Use-at-will »
● Extrême souplesse● Classes abstraites et interfaces (injection de
dépendances)● Mécanismes de chargement automatiques
« intelligents »● Personnalisation « chirurgicale »
![Page 8: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/8.jpg)
{ Concepts clés● Model – View – Controller
● Convient à la majorité des projets, sites comme applications
● Standard de facto de l'industrie du développement web
● Dissociation de la logique métier et de la présentation
![Page 9: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/9.jpg)
{ En pratique● zf.sh (ou .bat) permet de générer la structure du
projet et des éléments isolés● zf.sh create project afup
● Les dossiers principaux● application● public● tests● library● docs
![Page 10: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/10.jpg)
{ Configuration et initialisation● Le fichier index.php traite TOUTES les requêtes
entrantes, et permet de :● définir l'environnement● charger la configuration● démarrer le framework
![Page 11: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/11.jpg)
{ Controller / View● Par défaut, à chaque action sont associés :
● Une méthode de contrôleur● Un script de vue
![Page 12: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/12.jpg)
{ Du contrôleur à la vue...● Assigner une valeur à la vue :
● $this->view->attribut = 'valeur';ou
● $this->view->assign('attribut', 'view');● Récupérer la variable de vue :
● echo $this->attribut;
![Page 13: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/13.jpg)
{ La gestion d'erreurs● Un plugin redirige par défaut toutes les
exceptions vers error/error● Les données d'erreurs sont passées comme un
paramètre de requête ('error_handler')● Une vue associée permet d'en afficher (ou pas) les
détails
![Page 14: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/14.jpg)
{ Quelques composants...● Zend_Cache● Zend_Log● Zend_Translate● Zend_Auth● Zend_Acl● Zend_Service_*● Zend_Form
![Page 15: Introduction à Zend Framework€¦ · Introduction à Zend Framework Gauthier Delamarre – VA Consulting 10 Novembre 2010 {A propos de ... – PHP >= 5.1.4 jusqu'à la version 1.7](https://reader035.vdocuments.net/reader035/viewer/2022063014/5fd0f9e691f95c3a57509fbd/html5/thumbnails/15.jpg)
{Des questions ?