Encore une fois, ou pour être précis, j'ai fini de lire "Java Programming Thoughts" pour la troisième fois, j'ai fermé le livre et je suis tombé dans une profonde réflexion. Pourquoi ce livre vaut-il la peine d'être lu encore et encore ? De plus, il semble qu’à chaque fois que je le relis, j’y découvre toujours quelque chose de nouveau. Je ferai de mon mieux pour expliquer pourquoi, et j'espère qu'à la fin de cet article, nous aurons tous une réponse satisfaisante.
Pourquoi ce livre vaut-il la peine d'être lu ?
Pourquoi ce livre et pas d'autres livres ? Laissez-moi d'abord vous donner un indice : il y a eu un phénomène étrange au collège. Certains enseignants n'ont pas trouvé cela difficile en écoutant ses cours, mais après l'avoir écouté, ils ont découvert qu'ils avaient déjà résolu un problème très difficile sans même s'en rendre compte. je l'ai. En y réfléchissant maintenant, c'est en fait la capacité d'un maître : il peut réduire la complexité à la simplicité et expliquer clairement des problèmes complexes dans un langage simple. L'auteur de ce livre, Bruce Eckel, est un maître bien mérité. Il possède une riche expérience dans l'enseignement de Java, possède une vision unique de Java et a soulevé des questions et des suggestions sur de nombreuses conceptions Java.
Le caractère unique de ce livre peut être résumé dans les aspects suivants :
Une étape à la fois. N'introduisez qu'un seul point de connaissance à la fois, puis introduisez de nouveaux points de connaissance après vous être assuré que les lecteurs peuvent le maîtriser. De cette façon, les lecteurs peuvent comprendre plus facilement et avoir un plus grand sentiment d'accomplissement, et en même temps ils ne seront pas déroutés par de nombreux points de connaissances enchevêtrés. C'est pourquoi la version chinoise de ce livre fait 880 pages d'épaisseur.
Chaque point de connaissance correspond à un exemple de code compilable et exécutable. Les lecteurs peuvent l’exécuter eux-mêmes pour approfondir leur compréhension. Lorsque vous avez des questions, vous pouvez également modifier le code et vérifier vous-même, et vous pouvez l'améliorer inconsciemment.
Utiliser un cadre de test pour afficher le résultat du programme. Il présente les avantages suivants :
Cultivez les lecteurs à prêter attention aux tests. Dans le travail réel, de nombreux débutants ont tendance à ignorer l'importance des tests.
Éduquez les lecteurs à écrire du code testable, tel qu'un couplage étroit, etc., ce qui rendra le programme difficile à tester.
Apprenez aux lecteurs comment écrire des frameworks de tests, ce qui est très utile pour écrire des tests unitaires et d'autres tests au travail.
Lorsque vous souhaitez modifier le programme, comme un refactoring, vous pouvez utiliser le framework de test pour garantir l'exactitude du programme.
De nombreux modèles de conception sont utilisés dans les exemples. Concernant l'importance des modèles de conception, je pense que tout le monde sait qu'ils ne sont que les compétences de base de la conception orientée objet. On peut dire que les apprendre à travers des exemples pratiques fait d'une pierre deux coups.
Certaines fonctions sont abordées en profondeur. Par exemple, les génériques, par comparaison avec le C++, présentent les idées de conception, les avantages et les inconvénients.
Le processus d'apprentissage
Au début de Java Performance, l'auteur estime que pour réussir à régler les performances Java, vous devez passer par trois étapes :
Je ne sais pas ce que j'ai besoin de savoir. En d’autres termes, lorsque vous résolvez un problème, vous ne savez pas quelles connaissances et quelles méthodes vous devez connaître pour résoudre le problème.
Je sais ce que j'ai besoin de savoir. Vous connaissez les choses importantes que vous devez savoir pour résoudre le problème, mais vous n’avez pas approfondi ces choses importantes.
Je sais déjà ce que je dois savoir. Bref, vous connaissez et comprenez tous les détails.
Je pense, il y a une autre étape à ajouter :
Je remets en question et améliore ce que je sais déjà. Avec les connaissances et les détails dont je dispose, je serai sceptique et me demanderai pourquoi et que dois-je faire pour résoudre le problème ? Quels sont les avantages et les inconvénients de la façon de procéder ? Existe-t-il un autre moyen, un meilleur moyen ?
Vous constaterez que mon expérience de lecture de "Java Programming Thoughts" reproduit entièrement ces quatre étapes :
Avant de lire, je ne savais pas ce que je devais savoir . Pour bien utiliser Java.
Après l'avoir relu, je sais que j'ai besoin de comprendre l'orientation objet, les exceptions, la concurrence, les génériques, les IO, etc. pour bien utiliser Java.
Après deux passages, j'ai compris tous les détails techniques.
Après trois fois, j'ai commencé à évaluer et à réfléchir sur tous les détails techniques, d'où ils viennent, pourquoi ils sont ce qu'ils sont maintenant et où ils iront dans le futur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!