Bonnes pratiques de développement et débogage de programme en langage C et Fortran

Le ’coding style’ (suite)

Commentez raisonnablement et lisiblement,
Bien décrire les arguments des fonctions
Prévoir l’exploitation par un outil de documentation automatique (ex: ROBOdoc)
Eviter d’indiquer le fonctionnemement du code dans les commentaire.

Eviter de paraphraser le code

Des bugs classiques
Les débordements de tableau
Les problèmes d’initialisation (généralement signalés par le compilateur)
Les problèmes liés aux conversions implicites dans les expressions mathématiques
Les typos :
Commentaires mal fermés :
a=b ; / ∗ t h i s i s a bug ∗/
c=d ; / ∗ c=d w i l l never happen
Confusions entre test et assignation en C
i f ( a=b ) c ; / ∗ a always equals b ∗/

Eviter les structures obsolètes du Fortran

Banir le typage implicite, utilisez implicite none
Eviter les instructions do label…continue et préférer les boucles F90 (mais universelles): do…enddo et dowhile…enddo
Eviter les if logiques et toute les structures utilisant des
étiquettes. Utilisez la structure if…then…endif
Oublier les instructions archaïques goto, continue, entry, equivalence

Les options de compilation

GCC
-Wall Active tous les avertissements standards
-Wextra Encore d’autres options d’avertissement gfortran
-Wall Active tous les avertissements standards
-Wimplicit Avertissement sur les typages implicites
ifort
-warn all Active tous les avertissements standards

Qu’est ce qu’un débogueur?

Le débogueur est destiné à aider le programmeur à détecter des bogues dans un programme.
Il permet en général d’exécuter le programme tout en permettant de :
exécuter le programme pas à pas
contrôler l’état de la mémoire et des variables
agir sur la mémoire
définir des points d’arrêts

Panorama des debugeurs du marché

Sous Windows
(Microsoft) Visual Studio Debugger (codeview)
Sous Linux et unix
gdb, dbx, ddd
(Intel) IDB syntaxe compatible dbx et gdb
Purify, valgrind
Débugueurs parrallèles
(Totalview technologie) Totalview
(Allinea) Distributed Debugging Tool (DDT)
(Portland) pgdbg
(Microsoft) Visual studio

1 Les bonnes pratiques
2 Débuggeur
Présentation
GDB
DDD
Valgrind

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *