[Freeman] - Tête la première, Design Patterns
Par Laurent Deketelaere le jeudi, mars 30 2006, 18:47 - Flash plateforme - Lien permanent
traduction Marie-Cécile Baland
Ce livre est tout simplement énorme, c'est le genre de livre qui reste pendant des mois sur votre table de chevet, celui qui fait râler votre partenaire, celui qu'on ouvre trois à quatre fois par semaine avant de s'endormir, celui dont vous lisez plusieurs fois le même chapitre pour être certains de ne pas en perdre une miette, celui qui fait rêver, celui qui change un Homme, celui qui… (oula je m'emballe!). Que du bonheur quoi!
Pour ceux qui n'ont jamais ouvert un livre de la collection «Tête la première», laissez moi vous mettre dans l'ambiance (les autres vous pouvez sauter le paragraphe). Quand on ouvre ce genre de livre pour la première fois, on se demande vraiment où on est tombé! Dessins, graphiques, croquis dans tous les coins, imaginez l'état de votre cahier après une heure d'histoire (avec un grand H), vous en êtes pas loin. Dans l'introduction du bouquin on nous explique que cette collection ce base sur les dernières recherches en matière de sciences cognitives (si ils le disent, c'est que c'est vrai?!). Le résultat donne un livre qui présente plusieurs fois la même matière avec des approches à chaque fois différentes (BD, exercices, «Face à face» de patterns et autres surprises) ce qui permet d'après les scientifiques (attention on ne rigole plus là) de garder le cerveau en éveil et de l'aider à mémoriser les informations. Si c'est un peu déroutant au début on se rends vite compte de l'efficacité de cette méthode.
Le décors étant planté voyons ce qu'on trouve vraiment à l'intérieur. :p
Il était une fois à ObjectVille
La brique (650 pages) se divise en quatorze chapitres, chaque chapitre nous place face à un nouveau problème que l'on doit résoudre, exemple «chapitre 9» on assiste à la fusion de la cafétéria et de la crêperie d'ObjectVille, C'est génial, enfin presque, car il y a un souci, dans la crêperie le menu est stocké sous forme d'ArrayList alors que dans la cafétaria c'est un tableau, «Mais comment va-t on faire ?! ». Nous voilà donc partit pour une folle aventure toute au long de laquelle on va essayer de résoudre le problème. Et paf, sans que l'on s'en soit rendu compte on a intégré les patterns Itérateur et Composite.
Au programme
1. Bienvenue aux Design Patterns
Etude des notions d'héritage, et d'encapsulation.
Le Pattern Stratégie
2. Tenez vos objets au courant
Etude des notions de faible couplage.
Le pattern Observateur
3. Décorer les objets
Etude du principe Ouvert-Fermé.
«Les classes doivent être ouvertes à l'extension, mais fermées à la modification.»
Le pattern Décorateur
4. Un peu de cuisine orientée objet
Etude des problèmes de dépendances.
Patterns : Fabrique Simple, Fabrication, Fabrique Abstraite
5. Des objets uniques en leur genre
«Comment contrôler le bouilleur de chocolat ?».
le patterns Singleton
6. Encapsuler l'invocation
Etude des rôles et responsabilités.
Le pattern Commande
7. Savoir s'adapter
«Comment faire entrer une cheville ronde dans un trou carré?».
Les patterns Adaptateur et Façade
8. Encapsuler les algorithmes
C'est au tour des algorithmes de ce faire encapsuler.
Patterns : Patron de méthode, principe d'Hollywood
9. Des collections bien gérées
Gestion des collections
Les patterns Itérateur et Composite
10. L'état des choses
«Comment implémenter un état?»
Le pattern Etat
11. Contrôler l'accès aux objets
Vous avez déjà joué à «gentil flic, méchant flic» ?
Le pattern Proxy
12. Patterns de patterns
Etude des rôles et responsabilités.
Patterns composés (MVC,…)
13. Les patterns dans le monde réel
«Comment vivre dans un monde peuplé de Design Patterns?»
Mieux vivre avec les patterns
14. Annexe : Les patterns restants
«La popularité n'est pas donnée à tout le monde.»
Patterns : Pont, Monteur, Chaîne de responsabilité, Poids-mouche, Interprète,…
Un bien joli programme, non?!
Pour qui ?
Chose importante à signaler, ce livre est orientée Java, ce qui facilite la compréhension du code pour des utilisateurs d'ActionScript (2/3), car le Java ça se code presque pareil, :p pas de souci donc pour les Flash codeurs. Plus sérieusement il est conseillé d'avoir quelques notions de POO (Programmation Orientée Objets). Si «class», «extends» et «implements» font partie de votre vocabulaire et que vous voulez passer à la vitesse supérieure pour concevoir des systèmes souples, et agréable à maintenir, ce livre est pour vous.
Et les GOF (au suc') dans tout ça ?
Pour faire court, j'ai lu «Tête la première» de la première à la dernière page avec beaucoup de plaisir, alors que «Design Patterns» de la bande des quatre avait sur moi un effet soporifique au bout de quelques pages seulement! A ses dépends la version des quatre à plus de dix ans et ses exemples de codes sont fait en C++ et Smalltalk deux langages très éloigné de ce que je connais.
Par contre maintenant, quand je veux une explication détaillé d'un pattern j'ouvre d'abord la version des quatre, car la présentation est plus classique et donc plus efficace pour une utilisation en t'en que catalogue.
Apprendre avec «Tête la première, Design Patterns» et développer avec «Design Patterns, Catalogue de modèles de conception réutilisables».
Conclusion
Détends ton corps petit scarabée, tout va bien se passer.
ali_o_kan
Tête la première, Design Patterns
Eric Freeman et Elisabeth Freeman, auteurs.
Kathy Sierra et Bert Bates, créateurs de la collections.
ISBN 2-84177-350-7
O'Reilly.fr
Design Patterns, Catalogue de modèles de conception réutilisables
John Vlissides, Erich Gamma, Richard Helm et Ralph Johnson
ISBN 2-7117-8644-7
Commentaires
Je le lis depuis quelques semaines et c'est très agréable pour aborder ces sujets épineux. Même si à priori on se dit que la présentation se rapproche + des "Nuls"(iiisch!) qu'autre chose. Visiblement, je ne suis pas le seul à trouver le Gof ennuyeux; ça m'a fait le même effet: ça paraît si abstrait que ca finit par endormir. Par contre je lui redonnerai sa chance après avoir fini le bouquin d'Oreilly que je recommande vivement.
moi aussi, j'ai du mal à le lire le deuxième livre j'vais peut-être tenter le premier
Tête la première "Design Patterns". Nous sommes le 25 Avril 2006 et pas plus tard que samedi dernier j'ai feuillté "Tête la première D..P.." à la Fnac de Lille. J'avais quelques Euros en poche : allais-je les sacrifier pour un pavé de 650 pages...En tous les cas dans le rayon y avait d'autres gars qui cherchez des bouquins, un gamin de 10 ans qui demandait un pavé sur C++ pour ces jeux video, un "vieux" de 55 ans qui voulait un pavé pour faire du visual Basic (C'est le monde à l'envers hein !!! en quelques sortes...) Et moi au beau milieux... de ce flots de transactions qui m'attendait (le passage en caisse)... Donc j'ai feuilleté avant D..P.., et quel plaisir, ceux qui passait par là ont dû penser que je lisais du Desproge, ce livre est trop marrant, trop pertinant...trop : Un must have. Seul souci, mon "niveau" en POO ne me permettait pas de comprendre toutes les subtilités du Titre : "Design Patterns", je suis sensibilisé à l'UML, à la Programmation Orientée Aspect et autres prérequis pour la shématisation de la mise en place et de la création de fichiers en POO. Mais il faut beaucoup de patience pour gérer toute cette arborescence d'informations...Donc je suis passé en caisse après avoir bien ri...mais je suis sorti avec un autre livre : "Knoppix à 200", que de regrets d'autant que je n'arrive plus à remettre la main sur "Programming Macromedia Flash MX" de Penner qui était normalement dans ma bibliothèque. Vais-je corriger le Tire... la suite au prochain numéro...