Note de lecture : Essential COM, par Don Box

Note : 7 ; La source la plus technique sur les mécanismes COM. Difficile d’accès et peu illustré mais complet et consistant.

Ceci est une visite guidée et ardue du modèle COM / DCOM. Longtemps attendu, il se veut LE livre de référence sur le modèle objet COM, et il l’est sans contestes.
Le livre est très dense. Il compte 7 chapitres sur 375 pages. Le chapitre 1, un peu particulier, pourra intéresser les personnes d’avantages passionnées par le C++ : Une critique très intéressante du modèle objet du C++ y est développé.

Avec les 37 pages du chapitre 2 on aborde les interfaces COM et aussi la partie indigeste du livre, c’est-à-dire en fait le reste du livre en question. Parler d’interfaces en COM, c’est aborder IUnknown et l’implémentation du protocole qu’il sous-tend. L’auteur ne nous épargne rien mais nous gratifie aussi de macros pour simplifier la chose. En quelque sorte. Ce sont près de 60 pages qui sont consacrées aux classes au chapitre 3. On y trouve les différents mécanismes d’activation et les très obscurs monikers. C’est encore plus hard que le second chapitre…

Après les classes, ce sont très logiquement les objets qui sont mis en lumière sur près de 50 pages. C’est un moment de répis avec un propos moins rugueux et même bien illustré. Ici, c’est le mécanisme QueryInterface qui est exploré en profondeur, et les différents mécanismes de composition qu’il sous-tend. Les appartments abordés au chapitre 5 ont à la fois trait au modèle mémoire et au modèle de thread. Il n’est donc pas étonnant de voir qu’il s’agit là du chapitre le plus difficile du livre. Le modèle de marshalling, incontournable des middleware objet, et aussi de la partie. Voilà 60 pages qui vous donneront du fil à retordre.

Lire la suite

Note de lecture : Using Active Server Pages, par Scot Johnson

Note : 3 ; L’ASP d’antan payé au kilo.

Voilà un bon gros pavé de 800 pages pour caler les meubles comme on les aiment bien ! Les 32 chapitres de ce texte gargantuesque semblent sortis d’un autre âge, de celui d’avant Internet où l’on payait (parfois) les livres au kilo… Heureusement quand même, ce considérable pensum est subdivisé en 6 parties, sans oublier des annexes qui occupent une centaine de pages sur les 800 suscités. Voyons ce qu’il en est.

La première partie « introduction to Active Server Pages » occupe 2 chapitres et environ 50 pages. Il s’agit de poser quelques fondements techniques sur les briques de base d’une architecture, des protocoles et de ce qu’est une application Internet. C’est une introduction vraiment gentille répondant à des questions telles que « qu’est-ce qu’une architecture à composants ? », « c’est quoi des transactions ? », etc…

La seconde partie « VBScript : the foundation of Active Server Pages » ne cache pas tellement son jeu. Ce sont 7 chapitres sur 130 pages qui seront consacrées à ce thème. Les 3 premiers chapitres de cette partie sont littéralement une introduction à la programmation ! Variables, débranchements, opérateurs, etc… ce sont les éléments de base du langage VBScript qui sont abordés ici. Oh nostalgie, on y évoque aussi ActiveX et Java côté browser, cela ressemble aujourd’hui à des considérations d’un autre temps. Les deux chapitres suivants nous font faires des choses plus compliquées avant que l’on rassemble les morceaux afin de faire un vrai programme dans une page HTML au chapitre 8. Le dernier chapitre est un peu spécial car il traite du debugger. Beaucoup de copies d’écran dans ce chapitre, plus que dans les autres, c’est pas peu dire.

Lire la suite

Middleware et Internet, par Daniel Serain

Note : 6 ; Une introduction en douceur, mais un texte malheureusement démodé !

1999, pour les technologies, c’est désormais l’ancien temps ! De fait, cet ouvrage ignore (pour des raisons d’ancienneté) les technologies EJB, .NET et web services ! Aussi regarderons-nous cet opuscule d’un oeil nostalgique.

Le premier chapitre donne une vue générale sur la problématique des middlewares, et aborde superficiellement Corba et COM.

Le second chapitre traite des middlewares d’échanges de messages. Si ce chapitre ignore JMS (là encore pour de bonnes raisons), il présente cependant une bonne introduction à cette technique, sans toutefois rentrer suffisemment dans les détails. Il en va un peu différemment pour le chapitre suivant consacré aux middlewares orientés RPC, où l’auteur détaille plus la cinématique de fonctionnement des RPCs. Il consacre même une partie importante du chapitre à DCE : si la chose est intéressante, elle est encore un peu plus démodée ! Le chapitre 4, qui lui fait directement suite traite de Corba lui-même, des invocations statiques et dynamiques, mais peu des services Corba.

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 : 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 : 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.

Lire la suite

Note de lecture : High-Speed Windows Applications, par Bruce E. Krell

Note : 2 ; Beaucoup de lourdeurs et de formalisme, mais peu d’idées intéressantes.

Ce livre traite de la gestion multitâche sous Windows 3.1, donc en s’appuyant sur les messages Windows. On en prend pour plutôt cher : un peu plus de 330 pages hors annexes. Celles-ci sont elle-même volumineuses : 130 pages ! L’approche pédagogique est pour le moins sujette à caution, le formalisme est lourd et guindé. Le titre de section de la page 7 est assez symptomatique : « Turn off your PC ! ». Mais voyons ce que ce volume a dans le ventre. En l’occurrence, ses entrailles sont divisées en 10 chapitres.

Le premier chapitre se compose d’une douzaine de pages pour décrire l’approche générale de la méthode (car en fait, c’est une méthode). On a vite compris que l’on va s’appuyer sur les message Windows centré sur la logique utilisateur.

Le chapitre 2 est aussi une introduction, mais cette fois au SDK. C’est très descriptif et donc assez abstrait. Je ne pense pas que j’aurais pu aborder la programmation Windows avec ça (merci Charles Petzold !). Les exemples de code des fameux « WinMain » et « WndProc » n’aident guère.

Lire la suite