Go to content

L'API Collector dans tous ses états (José Paumard)

Introduite en Java 8, l'API Collector vit dans l'ombre de l'API Stream, ce qui est logique puisqu'un collecteur doit se connecter à un stream pour fonctionner. Le JDK est organisé de sorte que l'on utilise surtout les collectors sur étagère : groupingBy, counting et quelques autres. Ces deux éléments masquent non seulement le modèle de traitement de données des collectors, mais aussi sa puissance et ses performances. On parlera donc collectors : ceux qui existent car il faut les connaître, ceux que l'on peut créer, ceux dont on se doute que l'on peut les créer une fois que l'on comprend un peu les choses, et les autres, tant les possibilités offertes par cette API sont illimitées. On insistera sur le concept de downstream collector, central dans cette API. On montrera comment écrire des traitements entiers sous forme de collectors, de façon à pouvoir les passer en paramètre d'autres traitements. On ne laissera de côté ni la lisibilité du code ni ses performances, vue l'importance de ces deux points dans ce type de traitement. Des slides, mais aussi beaucoup d'exemples réels en live coding.

April 5, 2017