Java 8 in Action

2 mai 2016

Java 8 in Action

Acheter sur Amazon

Java 8 in Action : Présentation

Java 8 in Action est une excellente introduction aux nouveautés apportées par Java 8. L’ouvrage est concis et bien écrit. A titre personnel, je suis un ingénieur en développement logiciel et je passe le plus clair de mon temps à écrire des applications Android en Java 6 et 7 et, par ailleurs, je suis aussi intéressé par la programmation fonctionnelle. Je m’attendais donc en découvrant ce livre a tout connaitre sur les expressions lambdas et sur les streams, que je pensais être les principales nouveautes de Java 8. Mais j’ai été impressionné par à quel point Java 8 introduit de nouvelles fonctionnalités concernant la programmation fonctionnelle, certainement grâce au développement des langages utilisant ces techniques, comme Scala par exemple. J’ai été agréablement surpris de voir que Java 8 met en place les bases de la plupart des concepts liés à la programmation fonctionnelle qui aident le développeur à écrire du code plus concis et à un plus haut niveau.

A qui s’adresse Java 8 in Action ?

Java 8 in Action s’adresse aux programmeurs Java qui souhaitent savoir ce qu’il y a de nouveau avec Java 8. Il effectue un excellent travail en ce qui concerne la couverture des expressions lambda, la nouvelle librairie présentant les streams, les méthodes par défaut dans les interfaces, la classe Optional, les nouvelles API de gestion des dates et du temps. Mais le livre va beaucoup plus loin que seulement énumérer les nouvelles fonctionnalités.

Les auteurs décrivent les fondations de la programmation fonctionnelle, bien au dela des nouvelles classes ajoutées au langage et ils donnent de nombreux exemples tres detaillés de comment penser et écrire en programmation fonctionnelle Java 8. Ils présentent aussi des comparaisons avec ce qui pouvait être fait en Java 7, ce qui met en lumière les différences. Ils expliquent aussi l’interêt de la programmation fonctionnelle, en citant notamment un exemple de besoin d’exploiter le parallèlisme sur les processeurs modernes multi-cœurs, et comment la programmation fonctionnelle et les structures de données immutables aident à remplir cet objectif précis. Les auteurs précisent aussi que même si la difference entre programmation orientée objet et programmation fonctionnelle est importante, la transition mérite d’être faite.

Bien qu’étant très enthousiaste à propos des nouvelles possibilites apportées par Java 8, parfois d’ailleurs avec beaucoup de points d’exclamation, les auteurs expliquent aussi quelques compromis qui ont été faits lors du design de Java 8 et comment le développeur peut éviter les pièges qui existent avec ces nouvelles fonctionnalités. Comme le montre le livre, l’approche fonctionnelle de Java 8 est aussi contrainte par l’historique du langage Java et des choix éffectués par le passé ; les nouvelles fonctionnalités devant apporter un plus, tout en gardant l’ensemble du langage rétro-compatible le plus possible. Par exemple, les lambdas de Java 8 ne s’intègrent pas a 100% avec le langage comme on pourrait l’aimer, et le type des lambdas en Java 8 est une interface et non une fonction comme cela semblerait plus logique. On peut avoir l’impression que Java 8 supporte un nouveau type de fonctions mais ce sont bien des classes qui sont utilisées pour représenter les différents concepts.

Java 8 in Action : Notre avis

Je recommande Java 8 in Action à tous les developpeurs Java qui recherchent soit de découvrir les nouvelles fonctionnalités apportées par Java 8, soit d’apprendre et/ou de se perfectionner sur la programmation fonctionnelle et particulièrement son application en Java. Dès le début de la lecture de Java 8 in Action, vous vous rendrez compte à quel point votre code pourra être plus précis et plus concis en utilisant la programmation fonctionnelle, ce qui fera de vous un expert dans le design et le développement sur une nouvelle approche de la programmation.

Enrouler

Java 8 in Action

  • 8.5/10
    Auteur / Editeur
  • 9/10
    Lecture facile
  • 10/10
    Exemples de code
  • 9.5/10
    Niveau de détail
  • 8/10
    Diversité des sujets

Points positifs

  • Explications claires et concises
  • Excellente introduction a la programmation fonctionnelle
  • Beaucoup d’exemples

Points négatifs

  • Suppose un bon niveau en Java
  • Attention aux pieges de Java 8

3 commentaires

  • Christian 30 novembre 2016 à21 h 13 min

    Auteur / Editeur

    5

    Lecture facile

    10

    Exemples de code

    8

    Niveau de détail

    8

    Diversité des sujets

    8

    Bon livre pour prendre vos premières marques sur Java 8.
    Le language a eu beaucoup de changements pour cette version qui quand vous lisez le code écrit en Java 8 et vous êtes non averti qu’il s’agit de Java 8, il pourra vous sembler que c’est un language différent que le vieux bon Java 7.
    Je recommande ce livre à n’importe quel programmeur qui aime se maintenir et être mis à jour avec les nouvelles choses que Java doit offrir de nos jours ; il y a beaucoup de trucs intéressants et d’astuces faciles à mémoriser pour comprendre les exemples qui feront de votre expérience de lecture et d’étude facile.

  • Gabriel 30 novembre 2016 à21 h 15 min

    Auteur / Editeur

    8.7

    Lecture facile

    9.1

    Exemples de code

    8.6

    Niveau de détail

    9

    Diversité des sujets

    9.2

    Bien que cela m’ait pris une année pour finir ce livre je pense très sincèrement à présent qu’il l’a valu.

    En fait ce n’est pas un livre que vous lirez de but en blanc. Mais vous utiliserez pour aborder les nouveaux concepts de dans Java 8 (comme Optionals, programmation de style fonctionnel, et ainsi de suite). Même si Java 9 sera sorti probablement prochainement, vous pouvez employer ce livre à l’avenir pour comprendre des concepts présentés ici.

    • livreinformatique 1 décembre 2016 à9 h 57 min

      Merci pour votre message. Oui le livre vaut le détour, et n’est pas forcément conçu pour le lire d’une traite.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *