« Conseils de codage en C/Robustesse des programmes » : différence entre les versions

Contenu supprimé Contenu ajouté
+ sommaire
Thierry46 (discussion | contributions)
Utiliser le mécanisme d'assertion
Ligne 133 :
 
Traitement efficace des retours d'erreurs qui peuvent en étant considérée comme des valeurs de sortie normale entraîner des catastrophes.
 
==Utiliser le mécanisme d'assertion==
Les assertions sont des tests à placer dans vos programmes. C'est une condition qui doit être obligatoirement vérifiée. Dans le cas contraire le programme s'arrêtera.
 
Le langage C implémente les assertion à l'aide d'une macro : [[v:Langage C/Fonctions de base/assert.h|assert(condition)]] qui en plus est débrayable.
 
===Justification===
Vous devez utiliser ce mécanisme d'assertion pour construire des programmes plus robustes et faciliter la maintenance et la relecture du code.
 
Lorsque vous concevez une fonction, vous identifiez des invariants : des conditions qui doivent toujours être vérifiées pour pouvoir exécuter le traitement ou fournir des résultats utilisables. Par exemple pour une loi physique : une température doit toujours être supérieure ou égale à 0 Kelvin.
 
Vous coderez ces conditions sous forme d'assertion. En phase de mise au point, si une assertion n'est pas vérifiée, le programme ne doit pas se poursuivre. Lors de la phase de test, lorsqu'une assertion n'est pas vérifiée, le programmeur doit alors coder un mécanisme permettant de présenter un message d'erreur clair ou un contournement qui permettra de continuer. Les assertions qui n'auront pas été déclenchées en fin de période de test seront laissées dans les sources.
 
[[Catégorie:Conseils de codage en C (livre)]]