Les exceptions

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Les exceptions

par spirou » 01 août 2006, 21:52

Merci de tes explications :D

J'ai à peu près compris, je vais essayer de m'en servir dans mon code.

par naholyr » 01 août 2006, 21:31

Disons que la façon de voir les choses est différente. Je ne vais parler que des fonctions (donc qui ont pour objectif de renvoyer une valeur après un traitement).

En procédural on va avoir le raisonnement suivant :
- si j'ai un fonctionnement correct, que tout se passe bien, je renvoie une valeur.
- sinon je renvoie une valeur qui ne pourrait être renvoyé dans le cas normal.
Exemple : strpos qui renvoie un entier en temps normal, et false si la chaîne n'est pas présente.

En utilisant les exceptions le raisonnement est tout à fait différent :
- si tout va bien je renvoie une valeur.
- sinon je lève une exception.

L'objectif des exceptions est donc de rationnaliser le code : on ne pollue pas le code avec des valeurs "fantomes", une erreur = une exception. En cela la modélisation y gagne énormément.

À part ça question syntaxe ça a plutôt tendance à rendre le code plus verbeux, mais plus clair (c'est un peux une constante ça ;))

par spirou » 01 août 2006, 19:39

Ben, une méthode normale, c'est ce que je j'utilise habituellement, des conditions simples, en procédural.

par naholyr » 01 août 2006, 17:36

Tout dépend de ce que tu appelles une méthode normale ;)

Les exceptions

par spirou » 01 août 2006, 16:36

Bonjour à tous,

Je viens de lire sur un bouquin l'utilisation d'une exception pour la gestion de la validation d'un formulaire, je ne connaissais pas du tout ceci, et ça m'a l'air vraiment pas mal.

Je voudrais savoir si c'est vraiment intéressant de l'utiliser ?
Quels sont les avantages par rapport à une méthode normale ?

Merci de vos réponses :D