PyConFr 2015

}

dimanche 11:40:00–12:05:00

Des boucles aux tranducers

LEMAIRE Arnaud

Audience level:
Intermediate

Description

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.

Abstract

  • 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