Le coding défensif tente de prévenir les erreurs ou, s'il ne peut les empêcher, de les traiter élégamment. De nombreuses opérations devraient être « gardées » par du code qui évite les erreurs. Cela semble peut-être impressionnant, mais la simple liste de la figure 2 couvre la plupart des erreurs
Coding défensif
potentielles. Le code « de garde » ne teste
souvent que des conditions de limite.
Pour prévenir les erreurs d’index de tableau, on peut se
servir de la BIF %Elem pour tester que l’index de tableau fait
référence à un élément dans le tableau :
if idx >= 1 and idx <= %elem( array );
elem = array( idx );
endif;
Il faut quand même savoir qu’un test de limites d’index
ne garantit pas que l’élément du tableau auquel il fait
référence contient des données correctes.
Pour prévenir des erreurs de position de sous-chaîne, utilisez
la BIF %Len pour tester que la position de début de la
sous-chaîne est valide :
if pos >= 1 and pos <= %len( string );
substring = %subst( string: pos );
endif;
Pour prévenir la division par zéro, testez simplement que le diviseur n’est pas zéro :
if y <> 0;
z = x / y;
endif;
On peut souvent éviter la troncature
numérique en utilisant des définitions
de données standard pour dimensionner
les champs de manière
cohérente :
d x s like( stdInt );
d y s like( stdInt );
y = x;
Le coding défensif prévient souvent
les erreurs explosives. S’ils
n’étaient pas gardés, tous les exemples
de cette section résulteraient en un
message d’exception. On utilisera donc
le code défensif, dans la mesure du
possible, pour éviter des erreurs prévisibles
simples.
Téléchargez cette ressource
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Deepfakes et IA : 64% des Français pensent savoir les détecter, mais la confiance reste fragile
- Cryptographie post-quantique : le Campus Cyber publie deux guides clés pour accélérer la transition des entreprises
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
