Summary
Les boucles, tout le monde les utilise pour transformer de large collection. Et si vous les abandonniez en gagnant par la même occasion en clarté ? Et si vous pouviez appliquer les mêmes transformations sur des ensembles infinis tout en améliorant drastiquement les performances ? Par refactoring successif, nous passerons des boucles aux filtres et pipelines pour clôturer sur les transducers.
Description
- Présentation de l’étude de cas
- Pourquoi les boucles ne sont pas la bonne manière d’organiser son code ?
- Introduction de la notion de fonction d’ordre supérieure
- Présentation de map, et refactoring associé (sur le cas initial)
- Présentation de filter, et refactoring associé (sur le cas initial)
- Présentation de reduce, et refactoring associé (sur le cas initial)
- Présentation de reduce sur un cas non trivial (avec accumulateur non scalaire)
- Énumération des pattern typiques présents dans le code permettant un refactoring vers les fonctions déjà présentées.
- Chainage des fonctions, architecture pipeline & filter
- Expression de map en fonction de reduce
- Expression de filter en fonction de reduce
- Fonction de composition
- Introduction aux transducers
- Refactoring du code de départ à l’aide des transducers
- Avantages des transducers
- Transducers statefull
- Questions