Essentiel Java 8, lambdas et streams
Description
Journée destinée aux développeurs Java confirmés désireux de comprendre les nouveautés essentielles de Java 8 constituées par les lambdas et les streams. Des travaux pratiques sont réalisés.
Objectifs
A l'issue de cette formation, les participants seront en mesure de:
- Comprendre les concepts de programmation fonctionnelle et de lambda
- Découvrir la puissance des streams
- Utiliser lambda et streams pour rendre les codes Java plus maintenables
Méthodes pédagogiques
Formation avec un minimum de 50% de travaux pratiques. La session alterne les présentations théoriques avec les exercices en groupe ou individuels. Des versions numériques de tous les documents sont remises aux participants (support de cours, énoncés, corrigés).
Participants
Toute personne désireuse de comprendre la puissance de Java 8.
Pré requis
- La maitrise de Java 5/6 est requise pour profiter des travaux pratiques.
Programme
Java 8.
Présentation des nouveautés de Java 8.
- La nouvelle philosophie du langage: se concentrer sur ce que l'on veut obtenir, et pas sur la façon de le faire.
- Le contenu détaillé de cette version de Java.
La programmation fonctionnelle.
Présentation des concepts associés à la programmation fonctionnelle.
- Caractéristiques et bénéfices de l'approche fonctionnelle.
- La réification d'une fonction, où comment marier Objets et Fonctions.
- La transparence référentielle et l'optimisation par mémoisation.
Les lambda-expressions en Java 8.
La transcription du concept de programmation fonctionnelle dans le monde Java.
- Liens entre lambda, interface et classe anonyme.
- Le typage d'une lambda-expression, Function, BiFunction, Predicate, Supplier, Consumer...
- L'intérêt des références aux méthodes et aux constructeurs
- Les APIs modifiées pour exploiter les lambda-expressions.
Mise en pratique: création de lambda-expressions.
Map-reduce et streams.
Présentation des concepts popularisés par Google en 2004.
- L'intérêt du modèle.
- Les opérations map et reduce, les quatre étapes du processus.
- Exemples de mises-en-oeuvre.
Les streams Java 8.
L'API "stream" de Java 8 et ses cas d'utilisation.
- Les principes de base du streaming.
- L'usage conjoint des streams et des lambda-expressions.
- La parallélisation des traitements avec parallelStream().
- La bonne utilisation du pool de threads Java.
- Points d'attention et bonnes pratiques.
Mise en pratique: utilisation de parallelStream().
Filière
Code
CP-JAV8
Durée
1 jours
Tarif
690 € HT
Sessions
Nous contacter
01 39 50 2000