Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 05/12/2011, 18h57   #1
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 793
Points : 35 793
Par défaut Comment utiliser les exceptions de la SPL pour une meilleure gestion des erreurs ?



itanea vous propose une traduction de l'article anglophone How to use built-in SPL exception classes for better error handling.

Comment utiliser les exceptions de la SPL pour une meilleure gestion des erreurs ?

Cet article vous propose de creuser un peu plus la question et de trouver des exceptions adaptées à différentes situations. L'objectif final n'étant pas d'étaler son savoir sur les exceptions SPL en soirée mais bien de faciliter le débogage de ses applications.

N'hésitez pas à faire part de vos commentaires ou remarques concernant cet article.

à lui !
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 06/12/2011, 10h39   #2
Modérateur
 
Avatar de Bisûnûrs
 
Josselin
Développeur Web
Inscription : janvier 2004
Messages : 9 050
Détails du profil
Informations personnelles :
Nom : Josselin
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2004
Messages : 9 050
Points : 12 181
Points : 12 181
Salut,

Dans le dernier morceau de code (partie "UnexpectedValueException"), il manque un échappement de quote :

Code php :
throw new UnexpectedValueException('Le paramètre doit être l'une des constantes TYPE_*');
Bisûnûrs est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 06/12/2011, 18h44   #3
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 793
Points : 35 793
Citation:
Envoyé par Bisûnûrs
Dans le dernier morceau de code (partie "UnexpectedValueException"), il manque un échappement de quote :

Code php :
throw new UnexpectedValueException('Le paramètre doit être l'une des constantes TYPE_*');
Arf... bien vu

C'est rectifié.

__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2011, 21h32   #4
Membre régulier
 
Inscription : août 2010
Messages : 19
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 19
Points : 70
Points : 70
Article interressant, neanmoins je pense qu'il aurait été plus positif de présenter les exceptions par heritage et non par ordre alphabétique.
Typiquement, avec votre approche, il n'est pas aisé d'expliquer LogicException (ou RuntimeException), mais il aurait était plus simple de présenter ces deux classes parentes comme des domaines qui concernent respectivement la logique de l'application (problème à corriger au niveau développement) ou qui concerne l’exécution (problème à remonter à l'utilisateur)

Ou vous auriez pus également présenter les exceptions par paires : par exemple InvalidArgumentException vs UnexpectedValueException qui concernent tous les deux un problème au niveau des arguments passés a la méthode, mais l'un est de type logic et l'autre de type runtime ou encotre RangeException vs DomainException

Pour rappel, l'héritage de la SPL
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Exception
    LogicException
        BadFunctionCallException
            BadMethodCallException
        DomainException
        InvalidArgumentException
        LengthException
        OutOfRangeException
    RuntimeException
        OutOfBoundsException
        OverflowException
        RangeException
        UnderflowException
        UnexpectedValueException
revlis est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 07/12/2011, 12h39   #5
Membre émérite
 
Homme Frédéric Bruyère
Chef de projet NTIC
Inscription : novembre 2008
Messages : 124
Détails du profil
Informations personnelles :
Nom : Homme Frédéric Bruyère
Âge : 29
Localisation : Belgique

Informations professionnelles :
Activité : Chef de projet NTIC
Secteur : Conseil

Informations forums :
Inscription : novembre 2008
Messages : 124
Points : 806
Points : 806
Gros +1 sur ce que dit Revlis, mais c'est malheureusement comme ça dans l'article d'origine dont celui-ci n'est qu'une traduction :/

Du coup ma question serait plutot: pourquoi avoir simplement traduit un article "basiquement intéressant, mais illogique", au lieu de s'en inspirer pour écrire quelque chose de plus pertinent ?


Et en passant (mais c'est encore quelque chose qui devrait plutot etre remonté à l'auteur de l'article d'origine): certes la doc sur php.net est pauvre, mais elle est collaborative, un peu comme sur wikipédia; au lieu de répéter sans cesse qu'elle est trop pauvre - comme c'est fait au début de l'article - et de pondre des articles au quatre coins du web pour tenter de pallier ça, ça serait bien que les développeurs php s'impliquent directement dans l'amélioration de la doc officielle
__________________
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler)
Code62 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h37.


 
 
 
 
Partenaires

Hébergement Web