Article original : Must-read books to learn Java programming
Par javinpaul
Bonjour à tous, aujourd'hui est l'ère des cours en ligne. Tout le monde parle d'apprendre grâce aux formations en ligne, à YouTube, aux cours gratuits sur Coursera et autres sites web, ce qui est formidable car les cours en ligne aident à apprendre plus rapidement, mais je crois que les livres doivent encore faire partie intégrante de votre apprentissage, car ils fournissent les connaissances les plus approfondies et sont souvent écrits par des autorités en la matière.
Si vous apprenez la programmation Java, alors préparez-vous à découvrir certains des meilleurs livres pour apprendre et maîtriser la programmation Java dans cet article.
Dès qu'un programmeur commence à apprendre le langage de programmation Java, la première question qu'il pose est : « Quel livre devrais-je consulter pour apprendre Java ? » ou « Quel est le meilleur livre pour apprendre Java pour les débutants ? » ou « Pouvez-vous me recommander de bons livres pour apprendre Java ? ». Cela montre à quel point les livres sur Java sont importants pour les programmeurs, surtout pour les débutants.
Malgré la disponibilité de nombreuses ressources gratuites sur Java, comme des tutoriels, des cours en ligne, des conseils, des blogs, et des exemples de code, les livres sur Java ont leur propre place car :
- Ils sont écrits par des programmeurs qui sont des autorités dans le domaine.
- Ils couvrent le sujet avec plus de détails et d'explications.
Ces livres sur Java sont mes préférés personnels, et dès que j'ai un peu de temps, je préfère les relire pour rafraîchir mes connaissances. Bien que j'en ai déjà lu beaucoup (j'ai lu Effective Java au moins quatre fois jusqu'à présent), je veux toujours apprendre quelque chose de nouveau et ma quête de grands livres ne s'arrête jamais.
Ces livres sont parmi les meilleurs disponibles aujourd'hui et sont tout aussi utiles pour les débutants, les programmeurs intermédiaires et avancés en Java.
Peu importe que vous soyez complètement nouveau en Java ou que vous programmez en Java depuis un certain temps, vous apprendrez beaucoup de nouvelles choses grâce à ces livres.
Cela dit, tous les livres ne conviennent pas également à tous les programmeurs. Pour les débutants, Head First Java reste le meilleur livre pour commencer, et pour les développeurs Java avancés, Effective Java est un bon livre pour commencer.
10 meilleurs livres pour apprendre la programmation Java
Voici ma collection de livres sur Java que je recommande à tout programmeur qui veut apprendre Java. Elle contient des livres pour les débutants et les programmeurs expérimentés.
Ces livres couvrent une variété de domaines, y compris les fondamentaux de Java, le framework de collections Java, la multithreading et la concurrence, les internes de la JVM et l'optimisation des performances, les design patterns, etc.
1. Head First Java
Beaucoup de gens penseront que ce livre est dépassé, mais pour être honnête, Head First Java est le meilleur livre pour tout programmeur qui est nouveau en programmation et en Java. La manière dont les concepts sont expliqués est tout simplement phénoménale et j'ai vraiment apprécié leur livre.
Head First Java couvre les connaissances essentielles en programmation Java sur les classes, les objets, les threads, les collections et les fonctionnalités du langage, comme les Generics, les Enums, les arguments variables, ou l'auto-boxing.
Ils ont également des sections avancées sur Swing, le réseau et les E/S Java, ce qui en fait un package complet pour les débutants en Java. Ce devrait être votre premier livre Java si vous commencez de zéro.
Si vous préférez les cours en ligne aux livres, vous pouvez également consulter le cours Complete Java MasterClass d'Udemy.
Avis de non-responsabilité : ce n'est pas un cours gratuit, et je recevrai une compensation si vous achetez ce cours sur Udemy ou si vous utilisez des liens vers des livres listés ici depuis Amazon.
2. Head First Design Patterns
Le Head First Design Pattern est un autre livre de premier ordre sur Java de la série Head-First.
Lorsque j'ai commencé à lire ce livre en 2006, je ne pensais pas beaucoup aux design patterns, à la manière dont ils résolvent les problèmes courants, comment appliquer un design pattern, quels avantages ils offrent, et toutes sortes de choses basiques. Mais après avoir lu ce livre sur Java, j'en ai énormément bénéficié.
Le premier chapitre sur l'héritage et la composition est tout simplement fantastique et promeut de meilleures pratiques en introduisant un problème puis la solution.
Ce livre contient également des points clés utiles, des exercices et des cartes mémoires, qui vous aident à comprendre rapidement les design patterns.
Si vous voulez apprendre les design patterns Java de base et les principes de conception orientée objet, c'est le premier livre Java que vous devriez consulter.
Si vous cherchez un cours sur les GOF ou les design patterns orientés objet, je vous suggère de consulter la Design Pattern Library, l'un des meilleurs cours que j'ai suivis sur les design patterns jusqu'à présent.
Un point positif à propos de ce livre est que la nouvelle édition est mise à jour pour Java SE 8, ce qui vous apprendra à développer des design patterns classiques GOF en utilisant les fonctionnalités de Java 8, comme les expressions lambda, et les streams.
3. Effective Java
Effective Java est l'un des meilleurs livres sur Java dans mes archives et l'un des plus agréables à lire. J'ai une grande estime pour Joshua Bloch, l'auteur, pour sa contribution au framework de collections Java et au package de concurrence Java.
Effective Java est idéal pour un programmeur expérimenté qui maîtrise bien la programmation Java. C'est parfait pour les programmeurs qui veulent partager leurs compétences en suivant les meilleures pratiques de programmation et qui sont impatients d'écouter quelqu'un qui a contribué au kit de développement Java (JDK).
Effective Java est une collection de meilleures pratiques de programmation Java, allant des fabriques statiques, la sérialisation, equals, et hashcode aux generics, enums, varargs et réflexion.
Ce livre de programmation Java couvre presque tous les aspects de Java d'une manière légèrement différente de celle à laquelle vous êtes habitué.
Une nouvelle édition a été publiée l'année dernière qui introduit les fonctionnalités des JDK 7, 8 et 9, qui a été publiée l'année dernière en septembre. Il contient également un chapitre complet sur les lambdas.
4. Java Concurrency in Practice
Java Concurrency in Practice est un autre classique de Joshua Bloch, Doug Lea et leur équipe. C'est le meilleur livre sur la concurrence et le multithreading en Java — l'un des incontournables pour les développeurs Java.
Les points forts de Java Concurrency in Practice incluent :
1) Ce livre est très détaillé et capture les moindres détails du multithreading et de la concurrence.
2) Au lieu de se concentrer sur les classes de base de Java, ce livre se concentre sur les problèmes de concurrence, comme les deadlocks, la famine, la sécurité des threads, les conditions de course, et présente des moyens de les résoudre en utilisant les classes de concurrence Java.
Ce livre est une excellente ressource pour apprendre et maîtriser les packages et classes de concurrence Java, comme CountDownLatch, CyclicBarrier, BlockingQueue, ou Semaphore. C'est la principale raison pour laquelle j'aime lire ce livre sur Java et le relire encore et encore.
3) Un autre point fort de Java Concurrency in Practice est la clarté des exemples ; les exemples de ce livre sont clairs, concis et intelligents.
4) Ce livre est également bon pour expliquer ce qui ne va pas et pourquoi cela ne va pas, et comment le corriger, ce qui est essentiel pour qu'un livre sur Java réussisse.
En résumé, c'est l'un des meilleurs livres pour apprendre la concurrence et le multithreading en Java. Le contenu est définitivement avancé pour un débutant, mais c'est certainement un livre incontournable pour les programmeurs Java expérimentés.
5. Java Generics and Collections
Java Generics and Collections de Naftalin et Philip Wadler d'O'Reilly est un autre bon livre sur Java, que j'ai initialement oublié d'inclure dans ma liste mais que j'inclus maintenant à la demande de nombreux lecteurs.
J'aime ce livre pour son contenu sur les generics et les collections, qui sont des domaines centraux du langage Java.
Avoir une solide connaissance des collections Java et des Generics est attendu d'un programmeur expérimenté, et ces livres aident dans ce domaine.
Il explique chaque interface de collection comme Set, List, Map, Queue, et leurs implémentations, en comparant leurs performances dans différentes situations.
J'ai vraiment aimé leurs tableaux comparatifs à la fin de chaque chapitre, qui donnent une bonne idée de quand utiliser une classe de collection Java particulière, comme ArrayList, HashMap, ou LinkedHashMap.
6. Java Performance From Binu John
C'est un autre bon livre qui enseigne les internes de la JVM, le garbage collection, l'optimisation de la JVM, le profilage, etc., et je recommande vivement à tous les développeurs Java seniors de lire ce livre. C'est aussi l'un de mes préférés personnels.
Alors que nous progressons graduellement, nous sommes passés d'un niveau débutant à intermédiaire et maintenant à un niveau senior.
The Java Performance traite de la surveillance des performances, du profilage et des outils utilisés pour la surveillance des performances Java.
Ce n'est pas un livre de programmation habituel. Au lieu de cela, il fournit des détails sur la JVM, le Garbage Collection, la surveillance du tas Java et le profilage des applications.
J'ai adoré leur chapitre sur l'aperçu de la JVM, et c'est une lecture incontournable pour en apprendre davantage sur la JVM en langage simple.
Les débutants et les programmeurs intermédiaires peuvent bénéficier de ce livre, mais il est bon d'avoir une certaine expérience en Java avant de le lire. Jusqu'à présent, c'est le meilleur livre sur la surveillance des performances en Java.
C'est un autre livre incontournable sur Java si vous êtes sérieux au sujet des performances.
Il existe quelques nouveaux livres disponibles sur Java, qui couvrent le JDK 1.7. Pour découvrir les derniers livres sur les performances Java comme Java Performance, The Definitive Guide by Scott Oaks, qui vaut certainement la peine d'être consulté avant d'acheter ce livre.
Si vous avez besoin de conseils pour résoudre les problèmes de mémoire et de CPU, je vous suggère également de consulter le cours Understanding and Solving Java Memory Problems de Richard Warburton.
7. Java Puzzlers
Java Puzzlers est un autre livre de Joshua Bloch, cette fois avec Neal Gafter, qui vaut la peine d'être lu. Ce livre traite des cas particuliers et des pièges du langage de programmation Java.
Java est plus sûr et plus sécurisé que C++, et la JVM fait un bon travail pour libérer le programmeur de l'allocation et de la désallocation de mémoire sujettes aux erreurs. Mais Java a encore des cas particuliers qui peuvent surprendre même le programmeur Java expérimenté.
Ce livre sur Java présente ces pièges et les explique en détail. C'est un bon livre sur Java si vous aimez les énigmes — vous pouvez même inclure beaucoup de celles-ci dans les entretiens sur le Java de base pour vérifier leurs connaissances en Java.
Je ne le classe pas aussi haut qu'Effective Java et Java Concurrency in Practice, mais vous pouvez toujours l'essayer, en particulier pour vérifier vos connaissances sur Java et ses cas particuliers, ce qui vous aidera à répondre à certaines des questions pièges sur Java lors des entretiens.
Pour tirer le meilleur parti de ce livre sur Java, essayez de résoudre les énigmes par vous-même, puis consultez les explications pour rendre vos connaissances plus concrètes.
8. Head First Object-Oriented Analysis and Design
Un autre bon livre sur la programmation Java et les principes de conception de la série Head-First. Head First Object-Oriented Analysis and Design peut être lu en conjonction avec Head First Design Patterns.
Ce livre se concentre sur les principes de conception orientée objet, comme privilégier la composition sur l'héritage, programmer pour une interface plutôt que pour une implémentation, DRY, etc.
Une partie de l'apprentissage de Java consiste à écrire du bon code et à suivre les meilleures pratiques, et ce livre est excellent pour éduquer les programmeurs à ce sujet.
Les connaissances acquises grâce à ce livre sont applicables à de nombreux langages de programmation orientés objet et amélioreront globalement votre compréhension du code et des principes de conception OOP.
9. Thinking in Java
Thinking in Java est écrit par Bruce Eckel, qui est également l'auteur de Thinking in C++ et utilise son style unique pour enseigner les concepts Java.
Beaucoup s'accorderont à dire que c'est l'un des meilleurs livres sur Java, avec pour force de pointer vers des exemples intelligents. C'est l'un des livres complets sur Java et peut être utilisé comme référence.
Il y a un chapitre sur les E/S mappées en mémoire Java dans Thinking in Java, qui est mon préféré.
Si vous n'aimez pas le style d'enseignement Head-First, mais que vous avez besoin d'un livre Java pour débutants avec un style d'exemple simple, Thinking in Java est un bon choix.
Il est détaillé, mature et fréquemment mis à jour, mais si vous avez besoin de plus de choix, vous pouvez également consulter ces livres sur le Java de base pour débutants.
10. Java SE 8 for the Really Impatient
C'est l'un des meilleurs livres pour apprendre Java 8. C'est aussi mon livre généraliste sur Java 8. Si vous avez peu de temps et que vous voulez apprendre toutes les choses importantes sur Java 8, c'est le livre à consulter.
Je n'ai pas besoin de vous rappeler les compétences d'écriture de Cay S. Horstmann, l'un des meilleurs auteurs en Java et au même niveau que Joshua Bloch. Je les ai trouvés tous les deux très lisibles.
Vous ne vous ennuierez pas, ce que les programmeurs font souvent lorsqu'ils lisent des livres techniques. Il explique les expressions lambda, les Streams, les interfaces fonctionnelles, les références de méthode, la nouvelle API de date et d'heure Java et plusieurs autres améliorations mineures comme la jointure de chaînes, les annotations répétables, etc. En bref, l'un des meilleurs livres pour apprendre Java, sans conteste.
Conclusion
C'était ma liste des meilleurs livres sur la programmation Java. J'ai lu tous les livres, certains d'entre eux je les lis encore et quelques-uns, comme Effective Java et la série Head-First, je les ai lus plusieurs fois. Beaucoup de programmeurs me demandent par quels livres ils devraient commencer et quel livre Java ils devraient lire maintenant. J'espère que vous avez trouvé de bons livres dans cette collection. Bonne lecture !
Autres ressources utiles pour apprendre la programmation Java
10 choses qu'un programmeur Java devrait apprendre en 2019
10 outils que tout développeur Java devrait connaître
10 raisons d'apprendre le langage de programmation Java
10 frameworks que les développeurs Java et Web devraient apprendre en 2019
10 conseils pour devenir un meilleur développeur Java en 2019
Top 5 des frameworks Java à apprendre en 2019
10 bibliothèques de test que tout développeur Java devrait connaître
Remarques finales
Merci d'avoir lu cet article jusqu'ici. Vous pensez peut-être qu'il y a tellement de choses à apprendre, tellement de cours à suivre, mais vous n'avez pas à vous inquiéter.
Il y a de bonnes chances que vous connaissiez déjà la plupart des choses, et il existe également de nombreuses ressources gratuites que vous pouvez utiliser — j'ai également lié certaines d'entre elles ici et là avec les autres ressources, qui ne sont certainement pas gratuites, mais qui valent leur prix.
Je suis un fan particulier des cours Udemy car ils sont très abordables et offrent beaucoup de valeur pour un très petit montant, mais vous êtes libre de choisir le cours que vous voulez.
À la fin de la journée, vous devriez avoir suffisamment de connaissances et d'expérience en utilisant les ressources mentionnées ici.
Bonne chance dans votre parcours Java ! Cela ne va certainement pas être facile, mais en suivant cette feuille de route et ce guide, vous êtes un peu plus proche de devenir le développeur Java que vous avez toujours voulu être.
Si vous aimez cet article, envisagez de me suivre sur medium (javinpaul). Si vous souhaitez être informé de chaque nouveau post, n'oubliez pas de suivre javarevisited sur Twitter !
Encore une fois, tout le meilleur pour votre parcours de développement Java et un grand merci à tous les auteurs pour avoir écrit de si excellents livres. Ces meilleurs livres sur la programmation Java sont parmi les meilleurs livres pour apprendre Java — je dirais même que certains d'entre eux sont les meilleurs livres sur Java jamais publiés.