Envoyé par
yildiz-online
Pour ma part, j'aurais considéré ça comme une bonne utilisation, une exception va casser le flux d'éxécution, le traitement de création se faisant certainement dans un flux plus complexe(création puis affichage du résultat à l'utilisateur et potentiellement d'autres choses entre les 2), il est plus simple de juste tout arréter jusqu'à l'interception de l'exception.
Un autre point, est que ce cas n'est pas le seul cas qui pourrait empécher le traitement, une autre erreur métier, par exemple que l'abonnement n'est plus dispo.
Egalement, une erreur technique dans la DB lancera une exception, en utilisants différentes exceptions, ou du moins avec des messages différents, on peut notifier l'utilisateur de manière unifiée en gardant uniquement 2 flux: 1 "ça se passe bien", et l'autre "ça ne marche pas, voir le message ou le type d'exception pour savoir pourquoi".
Je ne suis pas fan des return boolean parce qu'a tous les coups, si on ne connait pas l'api, on oublie de les vérifier, et donc on ne traite pas les erreurs(la classe java.io.File est un bon exemple).