Le 22 avril dernier, j'ai eu la chance de donner une conférence de 45 minutes à DevoxxFR :
Gérer les erreurs avec l'aide du système de types de Scala !
Certaines fonctions de nos programmes peuvent échouer à calculer une valeur de retour. Plutôt que d'utiliser des exceptions, il est possible de tirer partie du système de types de Scala pour gérer les erreurs de manière plus fiable et lisible.
Nous verrons comment utiliser des ADT (Algebraic Data Type) comme
Option
,Try
etEither
, ainsi quedisjunction
etvalidation
de Scalaz. On regardera aussi la bibliothèque Rapture et ses "modes" qui offrent la possibilité à l'appelant de choisir de quelle manière il veut encapsuler les éventuelles erreurs.La gestion des erreurs est bien moins compliquée lorsque le compilateur peut nous aider !
Voilà la vidéo et les slides :
- Slides : https://dsferruzza.github.io/conf-gestion-erreurs-en-scala/ (dépôt GitHub)
- Vidéo : https://www.youtube.com/watch?v=TwJQKrZ23Vs
DevoxxFR 2016 c'était super, et j'espère revenir l'année prochaine !
Merci à Clément Delafargue de m'avoir fait découvrir les modes de Rapture.