Mars / Avril 2021

Gnu/Linux Magazine HS 113

Code Legacy

...ou comment maintenir vos vieux codes encore en production

En savoir plus

14,90 € TTC

Anciens Numéros

LIVRAISON OFFERTE en France Métropolitaine à partir de 50€
GNU/Linux Magazine 278

GNU/Linux Magazine 278

Novembre / Décembre 2025
9,90 €
GNU/Linux Magazine 277

GNU/Linux Magazine 277

Septembre / Octobre 2025
9,90 €
GNU/Linux Magazine 276

GNU/Linux Magazine 276

Juillet / Août 2025
9,90 €
GNU/Linux Magazine 275
9,90 €
GNU/Linux Magazine 274

GNU/Linux Magazine 274

Mars / Avril 2025
9,90 €
GNU/Linux Magazine 273

GNU/Linux Magazine 273

Janvier / Février 2025
9,90 €
GNU/Linux Magazine 272

GNU/Linux Magazine 272

Novembre / Décembre 2024
9,90 €
GNU/Linux Magazine 271

GNU/Linux Magazine 271

Septembre / Octobre 2024
9,90 €
SOMMAIRE :

Actus

p.06 Côté livres...
p.08 Créez des présentations animées avec Python

Dossier : Code Legacy ...ou comment maintenir vos vieux codes encore en production

p.30 Introduction au dossier
p.32 Les défis de la maintenance logicielle
p.42 Recréer un ancien environnement à l’aide de Docker
p.56 Déploiements reproductibles dans le temps avec GNU Guix
p.66 Arithmétique sur divers systèmes embarqués aux ressources contraintes : les nombres à virgule fixe

Outils

p.90 Concevoir des tableaux en LaTeX

Développement

p.110 Introduction à l’écriture de tests avec Erlang/OTP

ÉDITO :

Dans le dossier de ce hors-série, nous allons voir un aspect de la maintenance logicielle qui consiste essentiellement à recréer un environnement dans lequel un programme obsolète pourra être exécuté. Mais un autre aspect de la maintenance de code est à garder en mémoire également bien que se situant en amont : la qualité du code !

Si un logiciel est écrit en respectant les bonnes pratiques du ou des langages employés (conventions de nommage par exemple), que la documentation technique a été correctement écrite et complétée au fur et à mesure de l’avancée du projet et que les principes architecturaux de base ont été respectés, la maintenance sera nécessairement beaucoup plus aisée. En effet, si on ne parle pas d’adapter un environnement pour y faire tourner un code, mais d’adapter plutôt celui-ci pour qu’il fonctionne sur un système moderne (ou pour un programme actuel sur les futurs systèmes), le fait de porter une attention particulière à la qualité et ne pas se contenter d’un « machin » qui tourne permet d’éviter de se retrouver dans le futur dans le cas de la boîte noire que personne n’ose toucher de peur de la casser.

Comme souvent en informatique tout est question de compromis : est-ce que j’accepte de perdre du temps maintenant pour hypothétiquement en gagner d’ici quelques années, voire sauver l’activité de l’entreprise si le domaine d’application du logiciel incriminé est critique ? Est-ce que l’on gagne vraiment du temps à bâcler le travail ? Réfléchir à une architecture propre, documenter, tester sont des activités chronophages. Certains développeurs ne vont qu’à l’essentiel (l’aspect paresseux de l’informaticien, mais dans la mauvaise appréciation du terme). D’un autre côté, ce ne sont pas toujours les développeurs qui sont à blâmer, encore faut-il que les chefs d’équipes et dirigeants soient conscients qu’il faut du temps pour réaliser du bon travail !

Une fois que les contraintes de qualité ont été prises en compte, le portage du code nécessitera alors un travail minime et bien entendu la recréation d’un environnement adéquat au bon fonctionnement du logiciel sera toujours possible, et pour cela vous n’avez qu’à lire le dossier de ce hors-série...

Tristan Colombo

Le magazine de référence technique pour les développeurs sur systèmes open source et les ingénieurs R&D !

GNU/Linux Magazine s'adresse aux professionnels et aux particuliers désireux de mieux maîtriser les techniques et problématiques liées à la programmation et à l’utilisation de solutions open source. Tous les deux mois avec ses articles techniques, la publication couvre les thématiques suivantes : programmation système, algo, bas niveau, sécurité du code, développement web...

Renforcez la sécurité de votre Home Assistant
Hackable n°63

La domotique, c'est fantastique ! Surtout quand ça ne coûte pas trop cher, que ça rend service aussi bien pour le contrôle des lumières, le suivi de la consommation électrique, le contrôle de l'environnement ou l'automatisation, et que tout cela fonctionne avec du logiciel libre, sans exfiltrer des tonnes de données privées chez un fournisseur qui se fera tôt ou tard pirater. Mais à trop vouloir jouer la carte de la sécurité, on se prive parfois de certains avantages. Trouvons donc le bon compromis pour rendre notre installation accessible, sans créer d'énormes brèches...

À la découverte des machines à états finis
Hackable n°63

Nombre de phénomènes physiques qui nous entourent peuvent être décrits par un graphe d'états. Ce dernier représente les états successifs du phénomène en question, par exemple, les différents états de l'eau : état solide, état liquide et état gazeux. Il en est de même pour la majorité des systèmes que nous utilisons couramment : machine à café, lave-linge, automobile, distributeur de boissons, jusqu'à aller au comportement même des threads gérés par votre système d'exploitation.

STC15 : les microcontrôleurs avec un cœur vieux de 45 ans sont toujours d'actualité !
Hackable n°63

Le monde des MCU semble aujourd'hui très homogène et surtout totalement dominé par les architectures ARM, ce qui est, d'un certain point de vue, relativement vrai. Mais les alternatives sont nombreuses, qu'il s'agisse de classiques du genre comme Atmel AVR, de « nouveaux » venus comme l'écosystème ESP32 et/ou une architecture (ISA) conquérant chaque jour plus de part de marché, à savoir le RISC-V. Et dans cet univers parallèle à l'ARM, on trouve des choses qui peuvent paraître assez surprenantes, comme un microcontrôleur développé par Intel en 1980 : le 8051. Et celui-ci est toujours au goût du jour, un nouveau modèle est même arrivé l'été dernier, c'est dire !

Ce magazine est intégralement disponible sur Linux Magazine Connect
© 2025 - LES EDITIONS DIAMOND