Obligement - L'Amiga au maximum

Samedi 20 décembre 2025 - 04:59  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in English


Réseaux sociaux

Suivez-nous sur X




Liste des jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z,
ALL


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Point de vue : De petites choses, projet de nouvelles classes BOOPSI pour ReAction
(Article écrit par Daniel Jedlicka et extrait de Rear Window - octobre 2025)


Juillet a commencé chaud en République tchèque, alors j'ai décidé d'éviter les rues de ma ville natale et de rester à l'intérieur pour éviter les coups de chaleur ou, pire, les crises cardiaques. À mon âge, le risque est toujours présent. Au lieu de cela, je me suis installé à l'ombre avec une boisson fraîche et, comme prévu, mon Amiga. Ainsi, même si l'image pourrait suggérer une escapade à la plage, je suis en fait chez moi et je m'occupe.

J'ai récemment pris contact avec AmigaLabs, un groupe informel de développeurs de logiciels composé de personnalités d'AmigaOS 4 comme Andrea Palmatè, Alfkil Wennermark, George Sokianos, Ryan Dixon, Roman Kargin et d'autres. L'esprit du groupe, qui prône l'ouverture et le partage, et son intérêt pour AmigaOS 4 correspondent parfaitement aux idées que j'ai exprimées dans mon précédent article. Je les ai donc contactés pour savoir si je pouvais les aider.

Vous savez peut-être qu'AmigaLabs a débuté comme une initiative visant à porter un moteur de navigateur WebKit plus récent, une tâche colossale à laquelle je ne pouvais en aucun cas contribuer, étant donné mon manque d'expérience en C++, en compilation croisée, en environnements de développement modernes, etc. Cependant, comme le travail sur WebKit (et, par conséquent, sur le navigateur Web Odyssey) nécessitait une modernisation générale de la chaîne d'outils de développement d'AmigaOS 4, AmigaLabs s'est progressivement transformé en un projet plus vaste visant bien plus qu'une simple amélioration de l'expérience de navigation des utilisateurs. Aujourd'hui, le groupe se concentre également sur le portage de bibliothèques essentielles et le développement d'outils facilitant la vie des programmeurs AmigaOS 4, ce qui ouvre la voie à l'intégration de logiciels plus modernes sur la plate-forme.

C'est là que j'ai vu une opportunité de mettre mes compétences à profit, car s'il y a bien un domaine dans lequel je peux me targuer d'une certaine expertise, c'est l'écriture de classes BOOPSI, les éléments constitutifs des interfaces utilisateur Amiga. En tant que programmeur, j'utilise BOOPSI depuis qu'AmigaOS 3.5 a introduit la boîte à outils ReAction en 1999. Au fil du temps, j'ai appris à connaître très précisément les forces et les faiblesses de ce cadre d'applications ; une connaissance qui s'est approfondie lorsque j'ai plongé dans les méandres du fonctionnement interne de BOOPSI et commencé à écrire mes propres classes. Vous savez, c'est une chose de les utiliser en tant que programmeur d'applications pour créer ses interfaces utilisateur ; c'en est une autre de les écrire, de les déboguer et de m'assurer qu'elles fonctionnent bien avec Intuition et le reste du système.

J'ai beaucoup appris à ce sujet au cours de mes années sur le projet Enhancer Software d'A-EON Technology, qui a joué un rôle important dans mon apprentissage de BOOPSI. J'ai écrit deux tutoriels pour Enhancer Software et contribué à quelques autres, avant que le projet ne change de direction et que l'énergie initiale ne s'essouffle. Je suis néanmoins très reconnaissant de cette opportunité : sans Enhancer Software, je n'aurais jamais appris ni réalisé ce que je sais aujourd'hui.

L'une de ces raisons est que, pour que le cadre d'applications de programmation d'interface utilisateur graphique d'AmigaOS réponde aux besoins des logiciels modernes, il doit évoluer avec eux. Cela paraît évident, mais pourquoi n'observe-t-on pas une telle croissance ? Est-ce simplement le reflet de l'inertie générale dans laquelle AmigaOS 4 est progressivement tombé ? Est-ce le scénario habituel : d'autres priorités, pas de feuille de route, une équipe de développement surchargée ? C'est fort possible. Mais je pense personnellement que l'une des raisons est que BOOPSI reste largement fermé. La boîte à outils ReAction est entre les mains de quelques rares personnes qui comprennent BOOPSI, et compte tenu de leur implication dans de nombreuses autres tâches de développement d'AmigaOS 4, elle a été laissée à l'abandon. On ne reçoit au mieux que des mises à jour et des corrections de bogues sporadiques. Cela ne diminue en rien leurs efforts, loin de là, mais vu de l'extérieur, ce n'est tout simplement pas suffisant.

Depuis des années, je prône l'ouverture du code de ReAction par Hyperion afin que d'autres puissent y participer : pour aider à localiser et corriger les bogues dans le code, contribuer à des fonctionnalités, voire créer de nouvelles classes pour le système. Il est crucial de corriger rapidement les bogues : les classes BOOPSI sont des blocs de construction, et d'autres composants en dépendent. Une classe défectueuse détruit à son tour toutes les classes ou composants qui en dépendent. J'ai moi-même eu pas mal de situations où j'ai signalé un problème, pour le voir corrigé et publié des mois (voire des années) plus tard, au lieu d'un délai raisonnable.

Je comprends la nature fermée du système d'exploitation et sa propriété complexe, et j'avoue avoir peu d'informations sur les contraintes juridiques qui y sont liées. Néanmoins, cette information me donne l'impression qu'Hyperion est propriétaire de ReAction et devrait donc être libre d'en décider. Un autre argument est que l'ouverture des sources de la classe ne pourrait guère causer de dommages. Une grande partie de ce qui constitue une classe BOOPSI est du code passe-partout : des modèles qui se répètent ou varient dans le cadre d'applications. Il n'y a pas de recette secrète, pas de technologie précieuse à protéger du reste du monde. La conception est bien connue et vieille de 35 ans.

Mais bien sûr, de telles choses échappent au contrôle de nous, simples mortels Amiga, et sans véritables oreilles pour écouter, tout argument se transforme en un discours inutile. Alors, me souvenant de ce que j'ai dit dans le billet précédent - que la communauté AmigaOS 4 devrait commencer à organiser elle-même ce qu'elle peut organiser et se concentrer sur ce qu'elle peut influencer - je reviens maintenant à mon introduction et explique pourquoi j'ai commencé à écrire cet article.

Mi-juin 2025, j'ai proposé à AmigaLabs de développer un ensemble de classes BOOPSI gratuites et compatibles avec ReAction, afin de compléter l'offre AmigaOS 4 actuelle. Cette proposition s'inscrivant dans la stratégie des membres d'AmigaLabs en matière d'outils de développement, elle a été très bien accueillie. Le projet suivra un plan et quelques règles. Tout d'abord, aucune des nouvelles classes ne se fera passer pour une classe existante sous le même nom ; ce genre de pratique n'a jamais été source de confusion et d'incompatibilité. L'idée est d'ajouter de nouvelles fonctionnalités et de combler les lacunes de la boîte à outils, plutôt que de réimplémenter ce qui est déjà disponible. Ensuite, la distribution sera aussi simple que possible : les classes seront téléchargeables depuis OS4Depot là où les utilisateurs d'AmigaOS 4 se tourneront naturellement, et les mises à jour seront gérées via l'outil standard AmiUpdate du système. Enfin, les nouveaux composants seront bien documentés, avec des exemples, afin de faciliter l'apprentissage et d'aider les développeurs à les utiliser sans trop de tâtonnements. Et surtout : les tutoriels seront disponibles en code source sur GitHub sous une licence non commerciale, pour que les développeurs intéressés puissent participer ou simplement apprendre à créer une classe BOOPSI (car lorsqu'il s'agit de matériel d'étude, rien ne vaut le code fonctionnel).

En résumé, nous allons avancer petit à petit vers un ReAction ouvert. Et dès les premiers jours chauds de juillet 2025, le mouvement a commencé. Je progresse péniblement dans le code plutôt que sur le sable de la plage, et je regarde les résultats de débogage plutôt que de contempler des couchers de soleil spectaculaires. Il n'y a pas de palmiers, et pourtant, mes paumes sont moites. Je ne peux pas dire que je manque d'idées pour de nouvelles classes, et j'en ai déjà une bien avancée. Suivez cet espace pour plus d'informations sur l'avancement des travaux. En attendant, passez un bel été, de préférence dans un endroit plus frais que le mien !


[Retour en haut] / [Retour aux articles]