Profile picture of Philémon GLOBLÉHI
Philémon GLOBLÉHI
Développeur Java
Follow me
Generated by linktime
August 18, 2025
90% des devs Java font cette erreur avec les Streams Je vois souvent cette erreur : modifier une variable externe depuis un stream. Ça marche, mais c'est un piège. Pourquoi c'est problématique ? 1• Violation de l'immutabilité : Les streams sont conçus pour la programmation fonctionnelle. Modifier une variable externe casse ce paradigme. 2• Danger avec .parallel() : Si vous ajoutez .parallel() plus tard, votre code plantera. ArrayList n'est pas thread-safe, vous aurez des race conditions. 3• Difficile à tester : Votre méthode ne retourne rien, elle modifie juste un état externe. Comment testez-vous ça proprement ? 4• Performance : forEach() avec des effets de bord empêche certaines optimisations du compilateur. La solution ? Laissez le stream créer la collection pour vous. C'est exactement pour ça que collect() existe. Pourquoi la solution est meilleure : ✅ Thread-safety garantie : toList() crée une nouvelle collection de façon atomique ✅ Immutabilité : Vous ne modifiez pas d'état existant, vous créez quelque chose de nouveau ✅ Lisibilité : L'intention est claire, on voit qu'on construit une liste ✅ Testabilité : La méthode retourne un résultat, facile à assert ✅ Optimisations : Le compilateur peut mieux optimiser les opérations pures ✅ Parallélisation safe : Votre code fonctionnera avec .parallel() sans modification #Java #JavaDeveloper #CleanCode
Stay updated
Subscribe to receive my future LinkedIn posts in your mailbox.

By clicking "Subscribe", you agree to receive emails from linktime.co.
You can unsubscribe at any time.

August 18, 2025