• [^] # Re: Je n'aime pas la SFML

    Posté par (site web personnel) . En réponse à la dépêche SDL ou SFML ? Ne choisissez plus, prenez Gamedev Framework (gf). Évalué à 7.

    En C++, pour commencer, je ne voudrais pas faire de trop grandes généralités sur des langages que je ne connais pas.

    OK. Mais prenons Ada, qui est relativement proche de C++ (impératif, orienté objet, typage statique fort...), et qui est réputé pour être utilisé dans des systèmes critiques. Et bien il propose aussi des exceptions.

    Et comme des tas d'autres langages sérieux (Ocaml, Haskell, Erlang...), en plus des langages plus mainstream (Java, C#, Python...), proposent aussi des exceptions, on peut quand même largement douter du fait que ça n'apporte rien aux codes d'erreurs classiques (voire des mécanisme plus sophistiqués comme le pattern matching).

    Est-ce toujours possible de traiter dans les couches supérieures ?

    Mauvaise question.
    Si il est intelligent de traiter l'erreur 3 appels de fonctions en amont, alors les exceptions te permettent de faire ça avec peu de code boilerplate. Mais de la même manière que tu coopères avec la fonction qui te renvoie un code d'erreur (en traitant ce code), tu coopères avec du code qui peut soulever des exceptions (en mettant des handlers là où c'est pertinent). Les exceptions n'ont pas la prétention de régler le problème des erreurs, mais de permettre d'écrire (quand ça a du sens) du code plus simple/court/robuste.

    Personne n'a dit que les exceptions étaient un outil magique qu'il fallait saupoudrer sur ton code, et hop ton code gère les erreurs correctement. Non c'est un outil avec des avantages et des défauts, et qui peut être mal utilisé comme tous les outils.