Path: ...!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!pasdenom.info!.POSTED.2a01:e0a:472:70f0:5418:a8ca:5cf0:7e02!not-for-mail From: DrPi <314@drpi.fr> Newsgroups: fr.comp.lang.ada Subject: Re: To except or not to except ? Date: Sat, 7 Oct 2023 20:07:29 +0200 Organization: Message-ID: References: <65057626$0$8253$426a74cc@news.free.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 7 Oct 2023 18:07:31 -0000 (UTC) Injection-Info: rasp.pasdenom.info; posting-account="314@usenet"; posting-host="2a01:e0a:472:70f0:5418:a8ca:5cf0:7e02"; logging-data="2398"; mail-complaints-to="abuse@pasdenom.info" User-Agent: Mozilla Thunderbird Cancel-Lock: sha256:36lzB/M8gndOITpMS8SQq+QS4TgrXoJPa7NW93JtZoM= Content-Language: fr In-Reply-To: Bytes: 2551 Lines: 28 Le 07/10/2023 à 10:06, Stéphane Rivière a écrit : > 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. > J'ai bien compris le concept exposé par Jean-Pierre. Le plus dur est de déterminer quand utiliser une exception. Parfois c'est évident. D'autres fois, ça l'est beaucoup moins. Merci pour ton retour.