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 272

GNU/Linux Magazine 272

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

GNU/Linux Magazine 271

Septembre / Octobre 2024
9,90 €
GNU/Linux Magazine 270

GNU/Linux Magazine 270

Juillet / Août 2024
9,90 €
GNU/Linux Magazine 269
9,90 €
GNU/Linux Magazine 268

GNU/Linux Magazine 268

Mars / Avril 2024
9,90 €
GNU/Linux Magazine 267

GNU/Linux Magazine 267

Janvier / Février 2024
9,90 €
GNU/Linux Magazine 266

GNU/Linux Magazine 266

Novembre / Décembre 2023
9,90 €
GNU/Linux Magazine 265

GNU/Linux Magazine 265

Septembre / Octobre 2023
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...

Introduction au dossier : Code Legacy ...ou comment maintenir vos vieux codes encore en production
GNU/Linux Magazine n°113

Printemps 2021 : à l’occasion d’un nettoyage de printemps bien nécessaire et maintes fois reporté, Anatole retrouve un disque dur poussiéreux, rangé consciencieusement sur une étagère. Mais pourquoi donc avait-il gardé cette relique ? Allez hop, à la poubelle ! Mais, et si… Par acquit de conscience, Anatole suspend son coup de marteau fatidique et branche le disque. Il découvre, ébahi, une multitude de programmes qu’il avait écrit une dizaine d’années plus tôt : de petits outils sans prétention, mais qui lui seraient particulièrement utiles aujourd’hui. Il essaye de les exécuter, de les compiler, rien n’y fait. Pourtant il en est certain : ils fonctionnaient jadis !

Côté livres…
GNU/Linux Magazine n°113

Voici une sélection d'ouvrages pour la plupart récemment sortis ou sur le point de sortir et qui ont attiré notre attention.

Arithmétique sur divers systèmes embarqués aux ressources contraintes : les nombres à virgule fixe
GNU/Linux Magazine n°113 Free

Tracer les fractales de Mandelbrot ou de Newton sur de petits microcontrôleurs 8 bits ou 32 bits nous donne l’opportunité d’appréhender la représentation des nombres en virgule fixe pour une implémentation efficace de l’arithmétique – même sur des nombres complexes – sur systèmes embarqués à ressources réduites. Pouvoir tester le même code sur une multitude de plateformes impose de structurer son code pour séparer la partie algorithmique et l’accès aux ressources matérielles : nous allons proposer une architecture de code et de Makefile compatible à la fois avec des tests sur PC et sur diverses architectures de microcontrôleurs, en faisant appel aux stubs.

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