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
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- La connectivité, nouvelle colonne vertébrale de l’expérience en magasin
- Assises de la Sécurité 2026 : osons remettre l’humain au centre et reprendre les commandes
- Réforme de la facturation électronique 2026 : de la contrainte réglementaire à un véritable enjeu différenciant
- IA : la sécurité se prépare aux accès agentiques
Articles les + lus
Continuer avec Exchange Server : quelles conséquences ?
Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
Sécurité : une approche dans la durée avant tout
À la une de la chaîne Tech
- Continuer avec Exchange Server : quelles conséquences ?
- Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
- Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
- Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
- Sécurité : une approche dans la durée avant tout
