Sujet : Re: To except or not to except ?
De : stef (at) *nospam* genesix.org (Stéphane Rivière)
Groupes : fr.comp.lang.adaDate : 07. Oct 2023, 10:06:27
Autres entêtes
Organisation : La Maison
Message-ID : <ufr3i3$28d89$2@dont-email.me>
References : 1 2 3
User-Agent : Mozilla Thunderbird
Une exception est un goto déguisé mais tous les goto ne sont pas à jeter. Pas plus que les exit dans une boucle sont bien pratiques.
Je tente de suivre exactement ce que préconise Jean-Pierre. Parfois c'est un vrai gain de lisibilité, il faut juste choisir quand les utiliser avec du bon sens.
Un cas où je les utilise est de récupérer toutes les erreurs (pour les enregistrer dans un log à des fins de déverminage ultérieur) pour ensuite repartir dans le programme (cas d'un prog qui doit tourner 365/24 et qui gère, par exemple, des sessions web - au sens où chaque nouvelle session web est une 'nouvelle vie' du code, si je puis m'exprimer ainsi).
Je perds pas les erreurs et, en même temps, le prog est toujours dispo.
On peut aussi les utiliser quand on a des choses très dynamiques comme des requêtes SQL, possiblement enregistrées par un utilisateur, et qui peuvent être syntaxiquement incorrectes. Avant de les enregistrer, on les lance et si exception, récupération et on balance (avec des fleurs) le message d'exception à l'utilisateur afin qu'il révise sa requête.
--
Stéphane Rivière
Ile d'Oléron - France