Introduction à la programmation sur la famille Macintosh
Dès 1984, les développeurs découvraient doucement la nouvelle gamme Macintosh d’Apple. Pour les accompagner, Apple avait tout prévu, notamment une série de manuels publiés chez Addison-Wesley sous le titre « Inside Macintosh ». Nous publions aujourd’hui quelques extraits de l’un des opus les plus accessibles de cette série : Programmer’s Introduction to the Macintosh Family, que l’on trouve parfois d’occasion par exemple sur Amazon.
Comme l’indique un schéma au début de l’ouvrage, ce livre s’intégrait au sein de la collection de manuels traitant de tous les aspects de la programmation sur Macintosh. Cette collection s’était agrandie avec le temps, puisqu’elle ne comptait à l’origine que les trois volumes « Inside Macintosh I, II et III » consacrés au Macintosh, au Macintosh XL et au Macintosh 512. Le volume IV était consacré au Macintosh Plus, et le volume V, au Macintosh II.
Pour ceux qui auraient encore le moindre doute, rappelons que le Macintosh XL, bien que largement intégré à la famille Macintosh par les équipes marketing (comme dans cette brochure pour la famille Apple 32 SuperMicros), se contentait d’émuler le fonctionnement du Macintosh, en restant basé sur une plateforme de Lisa.
Dans notre version du livre, éditée en 1988, certains tableaux avaient déjà été mis à jour pour intégrer les nouveautés du Macintosh SE et du Macintosh II, comme la connexion ADB ou le processeur 68020.
Pourquoi développer pour le Macintosh, faisait semblant de se demander la marque à la pomme ? Parmi les nombreuses raisons, comme se positionner à la pointe de la technologie, ou disposer d’une base utilisateur en pleine expansion, Apple vantait la fierté du développeur, face à des applications qui, en plus de présenter une grande cohérence dans leurs interfaces utilisateur, étaient belles !
La philosophie du Macintosh reposait sur quelques principes très simples : l’utilisateur est le boss ; la compatibilité est la voie de la moindre résistance ; personne ne réinvente la roue. Autrement dit : le Macintosh replaçait l’utilisateur au centre des préoccupations du développeur, il offrait des logiciels compatibles entre-eux (même interface, copier-coller partagé…) pour ne pas rebuter les utilisateurs, et il offrait aux développeurs des outils de développement clé-en-main.
Une autre nouveauté pour les développeurs consistait à prendre en compte, dès le début de la conception des logiciels, des préoccupations qui étaient habituellement secondaires voire inexistantes. Ainsi, Apple insistait sur :
– la nécessité d’offrir une possibilité d’imprimer (en respectant la règle du WYSIWYG, c’est-à-dire la concordance entre ce qui est affiché à l’écran et ce qui est imprimé) ;
– la possibilité d’annuler la dernière action (le fameux Pomme-Z), une fonction totalement révolutionnaire et qu’il fallait donc intégrer dans le processus de développement ;
– une interface graphique respectant les canons décidés par Apple (avec une barre des menus, des icônes, et la souris, non remplaçable par les touches directionnelles du clavier) ;
– et la traduction de l’interface dans la langue de l’utilisateur, grâce à l’utilisation de textes renseignés dans les ressources du logiciel, et non pas directement intégrés dans le code-source (une fonction déjà offerte par le système du Lisa quelques années plus tôt).
Les capacités graphiques du Macintosh étaient également largement abordées, comme l’utilisation des fenêtres à l’écran : fenêtre de document, avec ou sans case de redimensionnement ; fenêtre d’accessoire ; fenêtre de dialogue, ou simple case d’affichage avec ou sans ombre.
Les développeurs découvraient également les concepts liés à l’utilisation des fenêtres : la case de fermeture, la zone de déplacement, et la case de redimensionnement.
Le manuel consacrait un long chapitre à la présentation de la technologie QuickDraw développée notamment par Bill Atkinson et Andy Hertzfeld. On se souvient que l’affichage de rectangles à coins arrondis était une grande première dans l’histoire de l’informatique…
Autre capacité inédite de QuickDraw, la possibilité d’appliquer des effets sur une « région », c’est-à-dire une sélection d’image totalement libre, réalisée au moyen de l’outil « Lasso ». Une fois sélectionnée, cette région pouvait être remplie, effacée, inversée… QuickDraw pouvait même comparer deux régions, pour déterminer leurs zones communes. Attention cependant, l’imprimante LaserWriter n’était pas à même d’interpréter ce concept de région !
Impossible de refermer ce livre sans jeter un coup d’œil à sa couverture cartonnée, cachée sous la jaquette en papier présentée au début de l’article. On y découvre une sympathique illustration représentant le Macintosh SE, le Macintosh II et le Macintosh Plus, dans un style très… QuickDraw !