Bien programmer en Java 7 et Programmer en Java

Mi-novembre, le JUG a reçu deux livres d'Eyrolles sur la programmation Java. Même si on apprécie que les éditeurs nous envoient des livres, je ne suis pas certain que ceux-ci soit bien adaptés au public ; et offrir un livre pour débutant serait presque vexant pour un participant au JUG. Quoi qu'il en soit, nous les offrirons et chaque gagnants pourra en faire cadeau à son neveu ou sa grand-mère. L'éditeur prend d'aileurs des risques à nous les offrir car nous aurons forcément un oeil plus critique que d'autres lecteurs.



Auteur Emmanuel Puybaret
Couverture Bien programmer en Java 7
Editeur Eyrolles
Date de parution : 25/10/2012

Le premier livre, "Bien programmer en Java 7", s'adresse aux développeurs qui connaissent un premier langage et qui veulent apprendre Java. Je ne suis donc pas tout à fait dans la cible. Peu importe, je vais quand même donner mon avis. Tout d'abord, je trouve l'objectif d'expliquer Java des bases jusqu'au déploiement d'une application Web, le tout en 400 pages, est ambitieux. Et par rapport à cela, j'ai plusieurs reproches à faire : 
  • Pourquoi parler de Swing ? C'est une technique ancienne et de moins en moins utilisée. C'est une technique qui est loin d'être simple et pratique. Je trouve donc qu'un chapitre sur le sujet est inutile et encombre le livre.
  • Pourquoi parler d'XML ? On peut sans problème faire des applications Java sans XML.
  • Pourquoi parler de programmation multi-tâches ? Je trouve que c'est un sujet trop compliqué pour un débutant.
Pour continuer avec les points négatifs, je trouve que quelques nouveautés Java 7 sont trop passées sous silence. Pour la programmation multi-tâches, les nouvelles APIs sont quand même plus élégantes que Thread et Runnable. Et pour les accès aux fichiers, c'est java.io.File qui est largement expliqué et java.nio.file est cité en deux phrases. 

Venons-en à ce qui est intéressant. Je trouve que la progression du livre est bonne et permet à un développeur de découvrir rapidement les concepts fondamentaux de Java. En 300 pages (j'ai passé ce qui me semblait inutile), on découvre tout ce qu'il faut pour programmer en Java, lorsqu'on connait un autre langage. 

Le livre constitue donc une bonne rampe de lancement, dense et rapide, pour un développeur qui a déja une bonne pratique d'un autre langage. Le livre serait encore meilleur avec une modernisation de quelques chapitre.



Auteur Claude Delannoy
Couverture Programmer en Java
Editeur Eyrolles
Date de parution : 27/09/2012 (8e édition)

Le second livre, "Programmer en Java 5 à 7", traite du même sujet, avec la même cible (donc ce n'est toujours pas pour moi), mais de façon beaucoup plus détaillée. C'est une vraie référence sur les bases de Java.

Par contre, l'auteur fait ressortir les nouveautés Java 5, 6 puis 7. Faut-il vraiment dire que les fonctionnalités de Java 5 sont des nouveautés ? On est en 2012 quand même. Le premier exemple est ce chapitre que parle de StringBuffer et qui cite la nouveauté StringBuilder. A contrario, les exemples sur le traitement des exceptions n'utilisent pas la multi-catch. On aurait aimé que le livre expose en priorité les fonctionnalités de Java 7 et, éventuellement, mette les autres façons de faire en annexe.

Comme pour le premier livre, il y a des choses qui me semblent en trop. Il y a 230 pages (deux cent trente, CCXXX) sur Swing. Si on pense aux arbres qui doivent être coupés pour Swing, ça donne des frissons. Il y a aussi un chapître sur les threads, qui est plus pertinent dans un livre aussi volumineux mais qui arrive un peu tôt dans le cheminement du livre. Et que viennent faire les patterns ici ; c'est encore un coup à se retrouver avec des patterns dans le code, juste parce que le développeur les a vus dans le livre.




En conclusion, si on écarte le fait que les deux livres ne s'adressent pas vraiment au JUG, si on met de coté tout ce qui est superflu ou obsolète, on peut dire que Bien programmer en Java 7 s'adresse aux gens qui veulent démarrer rapidement sur Java et Programmer en Java 5 à 7, à ceux qui veulent un livre de référence.

Comments