Java & LanguagesJava & Languages
Lunch Talk15min
BEGINNER

Comment rendre son code Java plus expressif et robuste avec le pattern matching

Le pattern matching, intégré en Java 21, transforme l'écriture du code avec une expressivité accrue. Grâce aux records, sealed classes, et les évolutions de instanceof et switch, il améliore lisibilité et robustesse. Un exemple pratique illustre comment il simplifie la logique, rendant le code Java plus élégant et maintenable.

Sébastien Buchoux
Sébastien BuchouxOnepoint

talkDetail.whenAndWhere

Wednesday, April 16, 12:35-12:50
Maillot
talks.description
Le pattern matching, longtemps réservé aux langages fonctionnels comme Scala ou Haskell, est désormais un outil de premier ordre en Java depuis la version 21.En combinant expressivité et simplicité, il révolutionne la manière d’écrire du code Java, notamment grâce à des structures modernes comme record et sealed class, ainsi qu’aux évolutions de instanceof et switch.Dans cette présentation, nous découvrirons comment le pattern matching améliore la lisibilité du code et renforce sa robustesse face aux changements. Nous passerons en revue les types de données et les nouvelles syntaxes introduits récemment dans l’écosystème Java.Pour ancrer ces concepts dans la pratique, nous explorerons un exemple concret : une fonction générant un message de salutation en fonction de l’état d’authentification d’un utilisateur.Vous verrez comment le pattern matching simplifie la logique et élimine les pièges des structures conditionnelles classiques.Adoptez ces nouvelles possibilités pour écrire un code Java plus élégant, lisible et maintenable.
java
expressivité
pattern
lisibilité
talks.speakers
Sébastien Buchoux

Sébastien Buchoux

Onepoint

France

Enseignant-chercheur devenu tech lead/architecte.

Côté dév:
J'aime développer des outils d'analyse de données scientifique orientés calculs hautes performances.

Côté méthodo:
Je suis un défenseur d'un développement basé sur l'expérience et de l'intégration continue et de la livraison continue (CI/CD).

Mes technos de prédilection:
Python, Cython, Typescript, Java et Rust.
comments.title

comments.speakerNotEnabledComments