Le Zend framework simplifie et accélère le développement, au prix d'un apprentissage qui peut être long et pas toujours simple.
Voici une réalité qu'il est bon de rappeler, et l'auteur Christophe Haro, Ingénieur et docteur en informatique, ne s'en prive pas.
Ce livre ne va pas par quatre chemins pour décortiquer le 'Zend Framework (ZF)'.
Tout au long de la lecture, l'auteur nous fait découvrir une bonne partie des composants de l'architecture de ZF.
Mais avant d'aller plus loin dans la critique, sachez que ce livre ne s'adresse pas aux personnes voulant débuter avec ZF (dans ce cas, dirigez-vous plutôt vers la section « cours» de ce site), ni même à ceux qui ne maîtrisent que partiellement PHP5.
Il est demandé pour aborder ce cours, puisque c'est bien de cela que l'on parle, de posséder les pré-requis suivants :
- connaissances des concepts objets de PHP ;
- connaissances de l'architecture d'une application Internet ;
- connaissances des patrons de conception.
Pour développer son livre, Christophe Haro s'appuie sur une installation PHP Zend Core pour Oracle, d'un composant de PEAR 'html_table' pour faire ses présentations et d'une base de données Oracle.
Cependant, n'importe quelle installation classique de PHP et un SGBDR du marché seront également un bon choix pour réaliser les exemples proposés.
Pour appuyer ses dires, l'auteur se sert d'une application basée sur la gestion des résultats d'examens (autant joindre l'utile à l'agréable pour lui, moins pour ses élèves), vous pourrez trouver les sources sur le lien suivant : SOURCES
Le livre se décompose en dix chapitres, assez complets et écrits de façon pédagogique, type syllabus, ce qui est parfois contraignant parce que l'on ne peut pas poser de questions au professeur.
La lecture suppose une certaine abstraction et la visualisation du code source peut parfois s'avérer nécessaire pour bien comprendre où l'auteur nous emmène.
Néanmoins, la lecture de cet ouvrage nous ouvre de nouvelles portes dans l'apprentissage de ZF. Le composant Zend_Registry n'aura plus de secrets pour vous, puisque tout au long des chapitres on met ce composant particulier en avant.
Après avoir lu les trois premiers chapitres et mis en place la structure préconisée, on rentrera dans le vif du sujet avec la présentation de certains concepts comme la convention de nommage de ZF (et de nous expliquer comment le composant Zend_loader est mis en place, pour respecter la convention "Package/SousPackage/Fichier.php" qui donnera "class Package_SousPackage_Fichier").
Comme je l'ai déjà dit, l'auteur utilise beaucoup le principe de configuration de l'application avec le Zend_registy, nous abordons donc également le Zend_Config que ce soit en fichier ini ou xml.
S'ensuit un exemple d'application console où vous pourrez explorer le composant Zend_Console_Getopt. Dans ce chapitre est également abordé le Zend_Filter et la problématique de l'encodage dans une application ZF.
Tous les chapitres sont dans la même veine : complets et précis.
Un gros chapitre est consacré aux accès de données, où les différentes façons de créer ses requêtes SQL sont explicités.
Parfois, on nous met l'eau à la bouche avec une description de la classe idéale, comme dans le chapitre huit qui parle de la confidentialité et où on nous propose un descriptif très complet de la gestion des mots de passe. Au final, on est déçu parce que cette classe n'est pas développée, même l'exemple montré ne se retrouve pas dans les sources.
De même, dans ce chapitre, on développe l'aspect Zend_Auth et Zend_Acl, et cette partie m'a demandé plusieurs relectures, pour assimiler les concepts, où l'on se sert des relations binaires (je crois !!), pour expliciter la théorie sur les ressources et les rôles.
Mais je vous rassure, la pratique est plus claire.
Nous terminerons ce livre avec un chapitre sur l'internationalisation et les services web, où seront abordés Zend_Translate, Zend_Date (très peu), Zend_Log, Zend_Http_Client et j'en passe.
Du côté des points négatifs, il y a le format du livre que j'ai lu, 21X17, qui n'est vraiment pas idéal pour la lecture, si on part du principe que cela ressemble fort à un syllabus. Heureusement, l'éditeur nous propose deux formats, ainsi que plusieurs types de reliure. Je vous recommande le format A4 spirale, qui se trouve dans la section 'support de cours'. Vous pouvez également le recevoir en PDF.
J'aurais aimé également trouver d'autres composants mieux développés comme Zend_Date, ou un chapitre sur la gestion des erreurs, aborder les helpers et Zend_Session par exemple.
En conclusion, j'ai vraiment bien accroché à ce livre, je pense qu'il est de très bonne qualité et qu'il ne fait pas double emploi avec ce que l'on trouve de bien sur le marché. J'en conseille la lecture aux personnes ayant terminé les tutoriels sur le web sur le démarrage de ZF.
Ce livre sera, je pense, une aide précieuse lors de vos nouvelles applications
Partager