Note : 6 ; Voyage tranquille au temps des Java Beans
Les Java Beans sont un sujet des premiers temps de Java, il en est devenu désuet. Alors que JEE était en train de promettre aux oubliettes ce fier modèle de composant, Spring lui aura offert une seconde jeunesse. Par un étrange trait du destin, c’est JEE qui se sera offert son ticket pour le musée d’archéologie !
Bien que le sujet soit assez basique, Robert Englander nous aura produit un ouvrage de 260 pages ! Celui-ci compte 10 chapitres que nous allons explorer. Le premier chapitre nous propose sur une dizaine de pages un tour d’horizon des propriétés des Java Beans, mais sans réellement rentrer dans ce qu’ils sont réellement. C’est assez superficiel. Beaucoup plus sérieux, le second chapitre explore en profondeur le modèle d’évènements des Java Beans. Passé de mode (et je suis gentil), ce chapitre est l’un des intérêts de ce texte vieux de plus de 20 ans. D’autant que le sujet est traité de manière exhaustive et avec pédagogie. Je regrette juste que ne soit pas adressé la représentation interne et le mécanisme de dispatching de ces évènements. Oh nostalgie, le chapitre se termine par AWT (paix à son âme) grand consommateur d’évènements Java Beans.
On continue sur le thème des évènements au chapitre 3, avec les adaptateurs d’évènements (qui sont en fait des listeners) et une pincée de réflexion pour rendre cela générique. Et toujours la déclinaison AWT en fin de chapitre. Eh oui, en 1997, c’était important. Le chapitre n’est pas grandiose, mais bien expliqué et bien illustré. Place aux propriétés au chapitre 4. Le chapitre est assez exhaustif sur la question, avec entre autres les évènements de changement de propriétés.
Le chapitre 5 aborde un sujet aujourd’hui polémique : la sérialisation ! Mais ici, on n’en fait cas et le sujet est bien couvert, que ce soit les attributs transients, les externalisables, etc. Contrairement aux autres chapitres, celui-ci est un peu austère, mais il est complet. Le chapitre 6 qui lui succède tombe un peu comme un cheveu sur la soupe, bien qu’il soit court : il nous décrit la structure et la construction d’un fichier .jar ! C’est sympa d’avoir ce genre de référence sous la main, mais le rapport avec le sujet de l’ouvrage est pour le moins ténu !
Le chapitre 7 consacré à l’utilitaire BeanBox est malheureusement le pire du texte. Le chapitre est très orienté « explication de texte du clickodrome ». Le machin est tombé en désuétude, bref passons. Le chapitre 8 nous propose une étude de cas avec une gestion de thermostat. En fait cette étude de cas ne couvre qu’une partie de ce qui a été vu jusqu’ici : introspection et sérialisation passent à la trappe, Mais on a droit à un prototypage avec BeanBox et une Applet pour commander tout ça. J’aurais préféré moins de cas d’utilisation et plus de couverture de features…
On arrive dans les aspects avancés avec l’interface beanInfo au chapitre 9. Cette fois, il faut s’accrocher un peu, mais le sujet est vraiment bien couvert. Le tout est illustré en étendant l’étude de cas initié au chapitre précédant. L’ouvrage se termine sur un éditeur de propriété qui n’apporte pas grand-chose au propos.
Le texte est un peu volumineux par rapport au contenu. Et si un certain nombre de sujets n’ont plus court au moins le livre a le mérite de faire le tour de la question, même si aujourd’hui fort peu de ces fonctionnalités sont réellement utilisées.
Référence complète : Java Beans, Guide du programmeur – Robert Englander – O’Reilly 1997 (V.O. : Developping Java Beans ; O’Reilly 1997 ; ISBN : 1 56592 289 1) – ISBN : 978 2 84177 038 0