Programmation avancée en Perl
Auteur : Sriram Srinivasan (Traduction Jean Zundel)
Synopsys :
ISBN: 2-84177-039-7
As suggested by several monks I've produced a review in french of the french translation of 'Advanced Perl Programming'.
Some people asked for an english's translation of this review, you'll find it below as a comment.
Programmation avancée en Perl
INTRODUCTION
J'ai un avis assez mitigé au sujet de ce livre.
Je recherchais un livre sur les structures internes de Perl,
qui irait un peu plus loin que le
Camel et qui serait un peu plus abordable que les sources de Perl.
Ce livre a partiellement répondu à mes attentes.
J'ai trouvé un livre intéressant à plus d'un titre, d'un excellent niveau technique mais certains aspects (que je détaillerai plus bas) amoindrissent sensiblement l'attrait de ce livre.
PRESENTATION
Programmation avancée en Perl comporte 412 pages.
Il se décompose en 20 chapitres :
- Références de données et stockage anonyme
- Implémentation de structures de données complexes
- Typeglobs et table de symboles
- Références de sous-programmes et fermetures
- Eval
- Modules
- Programmation orientée objet
- Orientation objet : les étapes suivantes
- Tie
- Persistence
- Implémentation de la persistence objet
- Réseaux et sockets
- Réseaux : implémentation des RPC
- Interfaces utilisateur graphique avec Tk
- Exemple d'interface graphique : Tetris
- Exemple d'interface graphique : perlman
- Génération de code par modèle
- Extension de Perl : un premier cours
- Intégration de Perl : la solution de facilité
- Fonctionnement interne de Perl
Et 2 annexes :
- A. Référence des widgets
- B. Résumé de la syntaxe
ANALYSE
Ce découpage, dont la logique m'échappe, donne au livre un petit coté 'décousu'.
Les chapitres sont, à mon avis, assez inégaux, certains sont excellents, d'autres le sont moins.
Certains domaines sont TRES (trop?) détaillés, comme par exemple le chapitre 5 entier sur Eval, ou les 3 chapitres sur l'interface graphique.
Plus que l'ordre de présentation des sujets abordés,
c'est leur intérêt(variable) et les raisons de leur choix qui me pose problème.
L'auteur a beau justifier ses choix en disant que ces domaines ont été choisis car représentatifs de ce qu'un programmeur DEVRAIT connaître,
le choix me semble arbitraire et pour le moins discutable.
(Pas de chapitre sur la sécurité ? Sur le tri ? L'obfuscation ?...)
En fait outre ce problème très subjectif, je reproche 4 choses a ce livre :
- Il n'est pas écrit par un programmeur Perl mais par quelqun qui connaît bien Perl.
La nuance est de taille, je n'ai pas retrouvé de passion dans ce livre, avec au bout du compte un livre qui n'arrive pas a captiver...
(Par opposition au Camel qui reste passionnant de bout en bout...)
- Plus embétant, certaines fautes de styles me semblent préjudiciables :
- Un livre qui commence à dater (1998!)
Avec certaines informations sur les threads ou les refs incompletes par exemple...
- Une tendance de l'auteur à plus présenter ses modules que les modules
'standards'.
Mais tout n'est pas a jeter dans ce livre.
De positif, on retiendra :
- Le style est clair et efficace.
- La comparaison entre Perl et d'autres langages (C++,Java,Tcl,Python) à la fin de chaque chapitre est intéressante et objective.
- Le chapitre 20 qui répondra à toutes les questions que vous pourriez vous poser sur la structure interne de Perl
(pour peu que vous ayez quelques bases en C).
- Les références vers d'autres sources d'informations en fin de chapitre, toujours utiles.
- Le chapitre 3, sur les typeglobs et la table de symboles TRES enrichissant tout en restant clair.
(Pour pouvoir, par exemple, comprendre pourquoi my est plus rapide que local)
- Le traitement de certains sujet généralement peu abordés et intéressants : La sérialization, les DIFFERENTS usages de tie.
- L'excellente qualité générale de l'ouvrage :
Avec trés peu de typos et d'erreurs d'imprimerie (juste un renvoi a une note page suivante à la page 17),
et une traduction excellente, c'est a dire qui se laisse oublier (je n'ai trouvé qu'une erreur de traduction dans les codes sources (page 271))
CONCLUSION
Ce livre reste un bon livre sur Perl, Moins passionant que le
CamelBook, moins pratique que le
CookBook, il
est quand même d'un excellent niveau, tout en restant clair et facile a lire.
Toutefois je ne peux m'empécher d'imaginer ce que ce livre aurait été s'il avait été écrit par un PASSIONNE de Perl...
Et de rêver...
(A quand un livre ecrit par plusieurs Saints du monastère... ;-)
Éditent chipmunk 2001-05-07
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.