This blog is no longer updated. Please check my new blog here.

Julien Sobczak

Java 8 Lambdas: Pragmatic Functional Programming

Richard Warburton

La référence sur les lambdas en Java mais pas sur Java 8.

General

O'Reilly Media Paperback 1449370772 150 pages

Review

Java est riche de nouveautés mais s’il ne fallait en retenir qu’une, ce serait sans hésitation les lambdas. Laissons donc de côté la nouvelle API Date ou encore Java FX pour nous consacrer uniquement à cette nouveauté grâce à cet excellent ouvrage.

L’auteur commence logiquement par expliquer la nécessité de leur introduction, leur syntaxe avant de décrire en détail le cas d’utilisation vitrine l’API Stream. Parfaitement mené, des diagrammes efficaces, des exemples bien choisis, on apprend facilement une API qui demande un réel investissement, au même titre qu’apprendre les bases du SQL. Place ensuite aux nouveautés (méthodes par défaut ou statiques dans les interfaces, etc), avant de revenir à l’API Stream pour débattre de points plus poussés comme les Collectors ou le parallélisme.

Mais Java Lambdas ne s’arrête pas là, contrairement à Java SE For The Really Impatient qui enchaîne alors avec les autres nouveautés de la version. On découvre ainsi des sujets très importants comme les tests et le débogage des lambdas, avant de se plonger dans les questions de conception et d’architecture, l’occasion de ré-implémenter quelques patterns GoF bien connus (Command, Strategy, Observer, Template).

Le tout dernier chapitre va encore plus loin en s’immisçant dans le monde du Reactive Programming et les Non-Blocking I/Os. On aperçoit Vert.x et RxJava, suffisamment pour mesurer l’importance des lambdas dans les années à venir.

Un livre maîtrisé de bout en bout. Brillant.