Java 22 est sorti avec en preview une nouvelle API pour créer soi-même ses propres opérations sur les Streams, un peu comme l'API des collecteurs mais pour les transformations intermédiaires effectuées par un stream.
Je vous propose d'en profiter pour faire un petit retour sur les concepts derrière un Stream, comment cela fonctionne en interne, comment les opérations (parallel/stateful/short-circuit) sont définies. Puis de sauter dans le grand bain et découvrir la nouvelle méthode gather() et l'API des Gatherers et ce que l'on peut faire avec. Enfin, nous verrons les limitations et les améliorations possibles de cette nouvelle API.
Je vous propose d'en profiter pour faire un petit retour sur les concepts derrière un Stream, comment cela fonctionne en interne, comment les opérations (parallel/stateful/short-circuit) sont définies. Puis de sauter dans le grand bain et découvrir la nouvelle méthode gather() et l'API des Gatherers et ce que l'on peut faire avec. Enfin, nous verrons les limitations et les améliorations possibles de cette nouvelle API.
Remi Forax
Université Gustave Eiffel
Je suis Maitre de Conférence à l'Université Gustave Eiffel (à Marne la Vallée).
Je passe la moitié de mon temps à discuter avec des élèves sur les langages de programmation et le reste de mon temps à faire de la recherche sur la langage Java.
Depuis un peu plus d'une quizaine d'années, je fait partie des gens qui fabrique les spécifications du langage Java, dans mon cas, j'ai travaillé et je continue à travailler sur les lambdas, les modules, les records/sealed-types, le pattern-matching, les value-types.
Je suis aussi un developpeur Open Source, en plus de l'OpenJDK, je maintiens quelques libraries connues et pas connues.
Je passe la moitié de mon temps à discuter avec des élèves sur les langages de programmation et le reste de mon temps à faire de la recherche sur la langage Java.
Depuis un peu plus d'une quizaine d'années, je fait partie des gens qui fabrique les spécifications du langage Java, dans mon cas, j'ai travaillé et je continue à travailler sur les lambdas, les modules, les records/sealed-types, le pattern-matching, les value-types.
Je suis aussi un developpeur Open Source, en plus de l'OpenJDK, je maintiens quelques libraries connues et pas connues.