IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Exceptions ou tests ?


Sujet :

C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm� Avatar de b Oo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    179
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 179
    Par d�faut Exceptions ou tests ?
    Bonjour � tous,
    j'aimerais savoir quand utiliser les exceptions.

    Par exemple, je me demande si lorsque je demande � un utilisateur de rentrer un nom de fichier pour le lire, et que celui-ci se trompe dans le nom du fichier si je dois utiliser une exception ou plut�t faire un test juste apr�s.
    Autre exemple, si je demande un nombre � un utilisateur pour qu'il divise un autre nombre. S'il rentre 0, je fais juste un test ou je fais une exception ?

    Plus g�n�ralement, j'aimerais comprendre pourquoi je dois utiliser un test plut�t qu'une exception et vice-versa.

    Merci d'avance.

    b Oo

  2. #2
    Membre confirm�
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    87
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Janvier 2003
    Messages : 87
    Par d�faut
    Les exceptions sont a choisir en priorite lorsque votre code est destinne a etre utilise par d'autres programmeurs. Cela va d'une part permettre d'eviter les mauvaises surprises, et surtout cela va aussi permettre au programmeur 'client' de pouvoir gerrer l'erreur de la facon dont il le souhaite.

    Il est bien plus propre de gerrer les comportements inatendus (dont login/pass mauvais) par des exceptions, seulement vous pouvez faire des code tout aussi propres sans exception pour votre cas d'utilisation :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    couple_id_pass  identifiants
    bool            validite = false
     
    FAIRE
      identifiants = demander_login_pass;
      validite = identifiants_valides (identifiants) ?
    TANT QUE validite == FALSE
    en ajoutant un compteur pour eviter la boucle infinie et pourquoi pas un timer pour eviter les brute forces, etc ^^

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    87
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Janvier 2003
    Messages : 87
    Par d�faut
    Tient je ne sais pas pourquoi je suis partis dans ce trip de login/mot de passe, j'etais persuade ca faisait parti de votre question Ce n'est pas grave, l'exemple et les explications restent valables

  4. #4
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par d�faut
    Faire des exceptions permet de bien s�parer code et traitement des erreurs.
    Ceci �vite d'alourdir des parties de code avec des if(...) � la cha�ne.

  5. #5
    Membre confirm� Avatar de b Oo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    179
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 179
    Par d�faut
    Merci pour les r�ponses,
    Citation Envoy� par busy999
    Les exceptions sont a choisir en priorit� lorsque votre code est destinne a etre utilise par d'autres programmeurs.
    Donc si mon programme n'est que "ex�cutable" les exceptions devraient �tre rarement utilis�es, ou vous voulez dire que je pourrais m'en passer mais que cela n'est pas recommand� ?

    Citation Envoy� par seriousme
    Faire des exceptions permet de bien s�parer code et traitement des erreurs.
    Pour cela on est d'accord, et je dirais que si l'on veut changer comment l'on rattrape l'exception cela est plus simple.

    Le probl�me c'est que j'ai l'impression que les exceptions sont assez "lourdes". J'entends par l� que pour moi c'est comme si on envoyait un char d'assaut pour tuer une fourmi.

    Citation Envoy� par seriousme
    Ceci �vite d'alourdir des parties de code avec des if(...) � la cha�ne.
    Ok d'accord, mais il ne vaut pas mieux contr�ler ce que rentre l'utilisateur (et donc passer � mes classes des param�tres valides qui emp�che des exceptions) plut�t que de ne rien contr�ler et laisser d�clencher une exception ?

    En fait je n'arrive pas � tr�s bien distinguer o� les exceptions sont n�cessaires ou non.

    Par exemple si je fais une classe string, il vaut mieux que mon programme g�n�re une exception si je suis en dehors des limites du tableau, ou un test me suffit ?

    b Oo

  6. #6
    Membre exp�riment�
    Profil pro
    �tudiant
    Inscrit en
    Avril 2006
    Messages
    237
    D�tails du profil
    Informations personnelles :
    �ge : 37
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 237
    Par d�faut
    Par exemple si je fais une classe string, il vaut mieux que mon programme g�n�re une exception si je suis en dehors des limites du tableau, ou un test me suffit ?
    Ici, je dirais une exception car afficher un message d'erreur est basique. On ne peut pas faire d'autre traitement contrairement � une exception.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 14
    Dernier message: 08/01/2013, 22h36
  2. exception au test de connection
    Par WebMeli dans le forum Visual Studio
    R�ponses: 0
    Dernier message: 24/03/2011, 07h29
  3. [JUnit] Tests Junit avec exceptions
    Par alex2746 dans le forum Tests et Performance
    R�ponses: 8
    Dernier message: 07/06/2010, 22h41
  4. exception lors de l'ex�cution d'un test d'application
    Par caro_caro dans le forum SWT/JFace
    R�ponses: 6
    Dernier message: 10/12/2008, 12h47
  5. load test et webtest exception
    Par ddoc dans le forum C#
    R�ponses: 0
    Dernier message: 30/08/2007, 12h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo