Delivering Push, par Ethan Cerami

Note : 4 ; Les facéties de l’histoire…

Voilà un bouquin rigolo. Il faut dire qu’il parle de « l’avenir » du Web et qu’il ne date pas d’hier. Bien sûr, toutes les technologies évoquées, plus ou moins propriétaires, ont été depuis abandonnées sans qu’elles aient connues de réel succès. Mais sans doute ont-elles jalonnées ce qui a suivi. Bref, ce texte apporte un petit éclairage historique, bien qu’il soit très clairement obsolète !

Ce sont pas moins de 400 pages structurées en 19 chapitres qui forment cet ouvrage.

La première partie regroupe les 4 premiers chapitres. Pourquoi le push ? Quels sont les acteurs et les technologies ? Ce sont à ces questions que répondent les 64 pages qui la compose. C’est plutôt clair, bien écrit et bien illustré.

Ce sont également 64 pages (vous avez bien compté, on en est à 128…) qui forment les 3 chapitres de cette seconde partie. Elle est consacrée entièrement à la technologie Netcaster de Netscape. Ca ne va cependant guère en profondeur : un premier chapitre pour en faire le marketing, un second pour s’intéresser au point de vue de l’utilisateur et le troisième expliquant la création de contenu. Nous dirons que c’est une introduction, mais pas mal écrite, comme la première partie.

Lire la suite

Note de lecture : HTML Publishing with Internet Assistant, par Gayle Kidder & Stuart Harris

Note : 1 ; Emouvant de naïveté, mais c’est tout.

1995, c’est vraiment la préhistoire pour le Web ! Ce court ouvrage présente des choses qui semblent aujourd’hui incroyablement bénignes. Voyons ce qu’il en est.
La bête fait 215 pages, structurées en 8 chapitres, complétées de 4 annexes et d’une disquette 3,5 pouces. Je n’ai pas pu m’empêcher de le préciser !

Le premier chapitre commence par nous expliquer ce qu’est le Web, les hyperliens et tout ce genre de choses. C’est très émouvant. On termine par l’installation de « Word Internet Assistant » qui sera le nerf de la guerre de cet ouvrage ! On récupère la chose par FTP, donc il est aussi nécessaire d’expliquer comment ce genre de choses fonctionne !

Le second chapitre nous invite à construire notre page d’accueil, avec Word IA, bien entendu. On s’initie aux joies de la structuration des répertoires, des balises h1, h2, etc… Bref, le HTML en mode touriste.

Au chapitre 3, on reste dans la lignée en faisant des choses plus avancées : ancres, liens hypertextes, boutons. Word IA, c’est vraiment extra. Je précise quand même que c’est une boutade…

Lire la suite

Note de lecture : ActiveX Controls Inside Out 2nd edt., par Adam Denning

Note : 6 ; Un somme de connaissance importante à l’époque, mais délivrée de manière un peu aride.

Il y a des gros pavés qui ne sont pas sérieux, et d’autres qui, le sont. Bienvenu dans ce livre qui illustre la seconde catégorie. Il est dans la lignée des Petzold, Prosise, Richter et Brockschmidt qui ont publié en leur temps les ouvrages « définitifs » sur Windows, MFC, Windows NT ou OLE. Ici l’objectif est de faire de même avec ActiveX : Ce que le Prosise est au Petzold, cet ouvrage devrait l’être au Brockschmidt, en quelque sorte. Et d’ailleurs le langage pour illustrer tout cela ne sera rien de moins que C++. Ne pas se fier à la couverture rouge funky, donc. Ca va être du sérieux.

Sérieux, le texte peut l’être. Avec 600 pages regroupés en 20 chapitres. Ils sont eux-mêmes regroupés en 3 parties, la quatrième étant consacré aux annexes.
La première partie « setting the scene » compte tout de même 200 pages et regroupe les 4 premiers chapitres. Le premier chapitre est plutôt « culturel » sur la notion de composants, afin d’introduire ActiveX. Le second est assez conséquents car il entend couvrir les objets COM, OLE et même un peu automation ! C’est en quelque sorte le Brockschmidt en accéléré ! Le chapitre 3 n’a rien à lui envier car il traite de la surcouche des contrôles et nous emmène jusqu’à la page 152. Franchement, on a déjà plus que des bases pour programmer des ActiveX, une fois rendu ici ! Au quatrième chapitre, on évoque des frameworks sus-jacents, à savoir MFC et … J++ !

Lire la suite

Note de lecture : Eclipse, par Steve Holzner

Note: 4 ; Un livre de commande, ni bon ni mauvais, mais qui date un peu!

Je profite de la période de noël pour vous asséner l’une de mes petites notes de lecture archéologiques ! Celle-ci date d’une bonne douzaine d’années, ne vous plaignez pas j’en ai de bien plus anciennes. Et que diable, il faut bien que je refourgue mes fonds de tiroir !

Il n’y a pas à dire : depuis quelques années, O’Reilly a perdu de sa superbe. Autrefois incontournables sur leurs sujets, nombre des titres de l’éditeur sont là pour occuper le terrain. C’est le cas de ce titre. De toute évidence, ce titre comble un trou dans le catalogue de l’éditeur. Mais voyons de quoi nous parlons.

Le livre est globalement divisé en 2 parties. La première présente l’IDE Java, tandis que la seconde expose le développement d’applications Java classiques, Web et plugins. La première partie est sans surprise, et l’on effectue le « tour du propriétaire » classique : fonctions de l’éditeur, debogage et profiling, réfactoring, gestion de projets avec Ant, gestion de versions avec CVS, etc… Le tout plus qu’abondamment illustrés de copies d’écran dont, si j’étais mauvaise langue, je dirais qu’elles sont là pour faire du volume. Au moins l’approche est didactique et ne requiert pas vraiment d’effort de la part du lecteur. On regrettera que l’auteur ne prenne aucun parti pris sur l’organisation du travail, des workspaces, etc.. Il se contente d’exposer (bien que clairement) les fonctions disponibles. Pas très inventif, tout ça.

La seconde partie expose en grande partie des éléments que l’on trouve ailleurs : développement d’applets ( !) et d’IHM avec Swing, ainsi que le développement d’applications Web « classiques » en JSP/Servlet, mais sans plugins avancés. La seconde moitié de cette seconde partie est plus spécifique à Eclipse avec SWT et les plugins. J’en conclus que cet assemblage un peu large a pour objet de mettre entre les mains du lecteur un ouvrage « tout en un » où l’on trouvera de quoi démarrer sur la plupart des sujets courants en Java.

Lire la suite

Note de lecture : Serial Communications, A C++ Developer’s guide, par Mark Nelson

Note : 7 ; Bien que désormais obsolète (car concerne surtout Windows 16 bits), reste intéressant sur les principes de gestion des ports série.

Tant que je suis dans les antiquités…en voici une tout à fait honorable ! Certes ce livre a perdu une grande partie de son intérêt, d’abord avec l’arrivée du Windows 32 bit et de TAPI puis des infrastructures et librairies qui rendent aujourd’hui transparente les vicissitudes des protocoles de communication.

Cet ouvrage nous permet, aujourd’hui encore, de nous ressourcer sur la mise en œuvre des communications à bas niveau, là où les caractéristiques du matériel ne peuvent être ignorées ! Mais la bête est imposante : ce sont 600 pages qui se présentent à nous sur ce seul sujet, le tout en 11 chapitres ! Le premier d’entre-eux rappellera des souvenirs aux plus anciens d’entre nous, il aborde l’interface RS 232 C sur 64 pages. Tout y passe, depuis la norme du connecteur, la signification des signaux et les protocoles de transmission modem. L’électronique sous-jacente, les fameux UART sont évoqués, mais leur gestion fera l’objet d’un chapitre à part. Finalement les protocoles d’échange de fichier (Kermit, ZModem, etc.) clôturent le chapitre. C’était en quelque sorte le tour du propriétaire.

Lire la suite

Note de lecture : Conception orientée objet, par Peter Coad & Edward Yourdon

Note 3 ; Les principes embryonnaires de la conception objet

Il y a « l’avant » Design Patterns, et « l’après ». Cet ouvrage est dans la catégorie « avant ». Il fait aussi suit à « l’Analyse orientée objet » des mêmes auteurs. Et son âge respectable le classe parmi les livres qui ont servi de fondation à l’orienté objet. Bien sûr, depuis on a construit pas mal d’étages, et seul les férus d’histoire informatique auront à cœur de se replonger dans ces textes !

Le problème avec « l’avant » Design Patterns, c’est que l’on parle bien d’analyse et de conception (ici séparés en 2 livres) et que l’on prétend faire la différence clairement, mais en fait ce n’est pas le cas ! Au long des 160 pages du texte principal, les auteurs peinent à exposer des aspects clairement différents entre l’analyse et la conception. Voyons cela.

En plus du texte principal découpé en 10 chapitres, l’ouvrage  compte 24 pages d’annexes, elles-mêmes séparées en 3. Passé la quinzaine de pages d’avant-propos, ce sont les 10 pages du premier chapitre « améliorer la conception » qui ouvrent le bal. Bien que cela ne soit pas avoué ouvertement, la conception y est présenté comme quelque chose d’ajoutée « après coup » pour améliorer la qualité et la maintenance ! On y évoque aussi les principes d’encapsulation et l’organisation fonctionnelle.

Lire la suite

Note de lecture : Unix, utilisation administration système et réseau, par Christian Pélissier

Note : 5 ; Unix pour les bénédictins, mais néanmoins très utile !

Je n’ai encore jamais croisé un bouquin sur Unix qui soit une franche tranche de rigolade. Celui-ci ne fait pas exception. En fait son style est franchement monacal. Je ne vais pas passer en revue les 37 chapitres composant les 750 pages de ce pavé. Et rester au niveau des 3 parties serait trop succinct.

Si l’aspect premier est rébarbatif, en y regardant de plus près, l’ouvrage est plutôt bien fait, à mi-chemin entre le manuel de référence et le guide de l’utilisateur, avec une prédominance pour ce dernier aspect. Tout d’abord le texte a le bon goût d’être finement découpé : 37 chapitres, c’est en moyenne une vingtaine de pages par chapitres. Le style est très sibyllin, mais il se débarrasse ainsi des circonvolutions qui rendraient l’ouvrage moins efficace. Il y a au moins 3 choses que j’apprécient :

  • Les exemples clairs de la ligne de commande. Cela ne se limite pas à la syntaxe, mais à l’usage réel que l’on peut en faire dans une séquence type.
  • Les variantes BSD et Système V sont présentées. Ce choix paraitra évidemment aujourd’hui un peu désuet.
  • Les commandes connexes sont évoquées : ainsi sur la création de répertoire, on parle de la façon de les supprimer, etc…

Lire la suite

Note de lecture : Cross-Platform GUI Programming with wxWidgets, par Julian Smart et Kevin Hock avec Stefan Csomor

Note : 4 ; Pas un truc qu’on lit pour le fun !

Les frameworks IHM en C++ ne sont pas mort ! Et ce volume de 540 pages (hors annexes) compte bien nous en faire la preuve avec wxWidgets. Le bestiaux compte 20 chapitres, il faudrait aussi y ajouter presque 100 pages d’annexes.

Les deux premiers chapitres (assez courts) sont là d’une pour nous présenter très brièvement l’historique de wxWidgets, puis un « hello world » qui nous montre déjà une certaine ressemblance avec MFC…

Dès le chapitre 3 on rentre dans le dur avec la gestion des évènements. Je trouve la prose et les explications assez sèches. D’un autre côté, la petite taille des chapitres aide…

En comparaison, le chapitre 4 « Windows basics » fait plutôt mouse costaud avec ses presque 100 pages ! La prose me semble assez décousue et si la présence de nombreux tableaux de référence semble rassurante, elle fait ressembler ce chapitre d’avantage à un manuel de référence qu’à un tutorial.

Lire la suite

Note de lecture : Programmer sous Windows 95 (4ème édition), par Charles Petzold et Paul Yao

Note : 9 ; Plus qu’un livre : une institution

10 ans après la 1ère édition, cette 4ème (qui ne fut pas la dernière) a encore pris de l’embonpoint pour atteindre 1200 pages. Malgré l’entrée dans le monde 32 bits, cette institution qu’est « le Petzold » reste fidèle à la programmation via les API héritées de Win16. Donc la part belle est faite aux applications fenêtrées : fenêtres, menus, tracés graphiques, impression, boites de dialogue, presse-papiers, etc… Il traite plus succinctement des aspects systèmes et des aspects spécifiques à Win32. Il est temps d’entrée dans le cœur du sujet. On parle de 20 chapitres regroupés en 5 parties.

La première partie comporte 4 chapitres totalisant 270 pages. Le livre ne commence réellement qu’au chapitre 2, qui s’articule autour du redoutable HelloWin.c ! Il faut tout le talent pédagogique de Charles Petzold pour démystifier les arcanes de la boucle d’événement et des handles de fenêtre, afin de donner une logique à l’ensemble. Utiliser le Canvas de fenêtre, l’événement WM_PAINT et autres invalidation de surfaces (sans parler des scroll barres) n’est pas non plus une sinécure, mais le chapitre 3 y vient à bout de manière méthodique. Une bonne base pour aborder la terrible complexité de la GDI au chapitre 4 ! Toutefois, le sujet mérite un livre (au moins) à lui tout seul et celui-ci ne saurait couvrir complètement le sujet…

La seconde partie est consacrée à la saisie. On parle de saisie au sens large : comptez 4 chapitres et 200 pages pour des sujets couvrant bien sûr le clavier et la souris, mais aussi l’horloge et les fenêtres enfant ! On ne se douterai pas au premier abord que la gestion du clavier puisse être si complexe, impliquant des messages clavier, mais aussi de focus de fenêtre, sans compter la prise en compte de paramètres OEM ! Un sujet parfaitement traité en profondeur ici. Heureusement, la gestion de la souris traitée au chapitre 6 génère moins de tracas, même quand on essaie de pousser le sujet dans ses retranchements : souris gérée au clavier, capture de la souris (si, si), etc.. La gestion de l’horloge abordée au chapitre 7 est pour une fois réellement simple sous Windows, peut-être est-ce pour cela que l’auteur a choisi un exemple complexifiant inutilement le sujet en y mettant de la GDI ? Par fenêtre enfants, il faut entendre les contrôles, essentiellement les boutons et la façon dont ils communiquent avec la fenêtre encadrante. Ce chapitre conclue cette partie.

C’est à la gestion des ressources qu’est consacrée la 3ème partie. 4 chapitres et pas loin de 450 pages sont nécessaires pour couvrir ce sujet hélas beaucoup plus compliqué qu’il ne devrait ! Icônes, curseurs et bitmaps que l’on fait figurer dans le fichier .res sont vite balayés au chapitre 9. La gestion des menus est menée de façon plus poussée au chapitre 10, avec quelque cas d’usage non orthodoxes ! Les boites de dialogues sont un sujet très large, allant des boites de messages et des CommonDlg aux boites de dialogues non modales. 90 pages pour couvrir cela de manière progressive et pédagogique ne sont pas de trop. Un sujet qui s’entend sur les 110 pages du chapitre suivant pour couvrir des aspects avancés qui sont une spécificité de cette édition « Windows 95 ». Hélas le sujet est traité avec beaucoup moins de pédagogie, c’est même un peu confus.

La 4ème partie pèse 150 pages et 3 chapitre et est entièrement dévolue aux fonction système. Le chapitre 13, très court donne une impression de bâclé pour traiter la gestion mémoire et des entrées sortie. Le chapitre consacré au multitâche l’est moins, mais on ne peut toutefois le considérer que comme une introduction au sujet. Il ne saurait faire concurrence au texte de Jeffrey Richter. On finit avec la gestion de l’imprimante, un sujet ridiculement compliqué, mais que la prose de l’auteur, encore perfectionnée depuis l’édition précédente, rend abordable.

La dernière partie de l’ouvrage est consacrée aux différents modes d’échange de données. 250 pages sur 5 chapitres leur sont consacrés. 2 chapitres sont consacrés respectivement au presse-papier et au très malcommode DDE. Je m’étonne de le trouver encore là, car son remplaçant (OLE) point le bout de son nez un peu plus loin… L’interface MDI, dont c’était le chant du cygne a encore doit à son chapitre également. Pas de changement non plus pour le chapitre consacré aux DLL, je continue à trouver que la gestion « sans import » n’est pas sérieusement traitée, alors que c’est la seule réellement utile ! Enfin le chapitre 20 nous fait découvrir OLE, nouveauté de cette version. Disons que c’est un chapitre introductif à la question, mais il est plutôt bien fait, eut égard au sujet dont la courbe d’apprentissage est plutôt raide ! Notons aussi que c’est le seul chapitre dont les exemples sont en C++. Bien sûr la couverture du sujet est très loin d’être à la hauteur du Brockschmidt, mais celui-ci n’est pas non plus extraordinairement pédagogique…

Bien sûr, cela semble dépassé de s’intéresser à la programmation Windows aujourd’hui, surtout à aussi bas niveau. Néanmoins, comprendre le fonctionnement d’une interface fenêtrée au niveau de ses fondamentaux n’est pas ridicule. A l’époque où le développement Windows battait son plein, je considère que la connaissance du développement au niveau des API était un savoir fondamental, même à une époque où l’on développe confortablement avec les MFC et des assistants (beurk !). Le Petzold est un modèle de pédagogie, c’est pourquoi j’avais élu l’édition précédente (celle de 1992) « book of the year ».

image

Référence complète : Programmer sous Windows 95, 4ème édition – Charles Petzold & Paul Yao – Microsoft Press 1996 – ISBN : 2-84082-195-8 (VO : ISBN 1-55615-676-6)

Programmer sous Windows 95

https://www.goodreads.com/book/add_to_books_widget_frame/2840821958?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on

Note de lecture : Analyse orientée objets, par Peter Coad et Edward Yourdon

Note : 4 ; Typique de l’approche objet des années 80

Il s’agit ici de l’approche objet typique des années 80. L’emphase est mise sur l’identification “à priori” des objets, ainsi que des attributs et des services attenants, en ne prenant que faiblement en compte le contexte de leur utilisation. Avec 180 pages pour 10 chapitres, ce n’est pas un gros volume. Un second tome, dédié à la conception le complète.

Le premier chapitre est un très classique argumentaire de l’intérêt de l’objet par rapport à la décomposition fonctionnelle en rappelant les grands traits de l’objet : héritage et encapsulation principalement.

Les chapitres 2 et 3 s’articulent autour de l’identification des objets. On notera aussi passage l’évocation de Smalltalk par les auteurs. Les méthodes suggérées sont plutôt empiriques, et surtout on reste sur l’idée d’identifier les objets « à priori », symptomatique du courant de pensée de cette époque.

Le chapitre 4 consacré à l’identification des structures est en fait consacré à l’héritage. Il répond à la question : qu’est-ce qui est et qu’est-ce qui n’est pas un héritage. Question dont la réponse est : ce qui obéit à la relation « est un ». On n’avait pas besoin de 30 pages pour cela ! La notion de « sujet » qui est l’objet du chapitre 5 correspond plus ou moins à celle de package. Elle est curieusement mêlée avec l’idée d’une classe parent qui porterai le même nom… On est décidément dans la mouvance « montrez-moi votre arbre d’héritage !

Attributs et relations sont abordés au chapitre 6. J’ai trouvé que c’était le plus intéressant arrivé à ce point de la lecture, car il répond au moins à des questions de structuration concrètes.

La notion de « service » abordée au chapitre 7 correspond au volet dynamique de la modélisation. Son focus n’est pas très clair car assemble plusieurs concepts, y compris des notions d’architecture et de diagramme d’état. Bref, je n’ai pas accroché.

Le chapitre 8 consacre quelques pages futiles aux outils de modélisation. De même le chapitre 9 est succinct et prétend traiter le passage à la conception orientée objet. Si l’auteur disent bien qu’il s’agit d’un continuum, on ne voit rien de tangible. Le livre se conclut sur un chapitre 10 qui traite de considérations générales sur la mise en œuvre de l’analyse orientée objets.

Ce livre est symptomatique de l’approche objet de la fin des années 80 : une emphase sur les aspects objet liés à l’héritage, plus encore qu’à l’encapsulation (évoquée, mais pas vraiment mise en œuvre). On y voit beaucoup de formalisme et une grande rigidité dans la démarche, ce qui rend cette démarche (comme les autres) bien peu opérationnelle.

L’ouvrage, aujourd’hui ne présente plus qu’un intérêt historique, mais sa lecture ne présente plus d’intérêt pour lui-même. Qui plus est, la prose, du moins dans sa traduction est plutôt aride.

image

Référence complète : Analyse orientée objets – Peter Coad & Edward Yourdon – Masson 1993 (V.O.: Object Oriented Analysis, 2nd edition – Prentice Hall 1991) – ISBN: 2-225-82562-9

Analyse orientée objets

https://www.goodreads.com/book/add_to_books_widget_frame/2225825629?atmb_widget%5Bbutton%5D=atmb_widget_1.png&atmb_widget%5Bhide_friends%5D=on