Thinking in Java (Version finale, Janvier 1998)

Introduction

Thinking in Java est un excellent livre sur Java. La version présentée ici est la première édition, dédiée aux versions 1.1 et 1.2 de Java. L'auteur, Bruce Eckel, permet la distribution gratuite de la version électronique de son livre.

Les dernières informations ainsi que les éditions plus récentes sont disponibles à l'adresse : http://www.mindview.net/Books/TIJ

Lorsque j'ai mis en place cette page en 1998, la bande passante disponible était limitée et il n'y avait pas encore de miroir en France de Thinking in Java. Ce n'est évidemment plus le cas maintenant.

Cependant, il semble que cette page est encore beaucoup consultée. J'ai donc décidé de la laisser disponible, sans pour autant mettre à jour l'édition proposée.

Historique des modifications

Mise à jour : Nouvelles Collections

Dans le JDK1.2 beta 3, des changement conséquents ont été apportés aux nouvelles bibliothèques de collections. Les pages modifiées sont contenues dans le fichier suivant : newcollectionscorrections.pdf. Les modifications des sources sont disponibles plus bas dans cette page.

Version finale, Janvier 98

C'est la version qui a été envoyée à l'éditeur (la pagination est différente dans la version papier, cette version ayant été adaptée pour consommer moins de papier).

Cette version est nettement différente de la précédente (version 10a) :

  1. Une section sur les classes Swing (JFC) de Java 1.2 (fin du chapitre 13) ;
  2. Une section sur les classes Collections de Java 1.2 (fin du chapitre 8) ;
  3. L'annexe A sur l'utilisation de code non Java a été ajoutée et constitue une introduction assez complète de ce sujet ;
  4. Une nouvelle annexe sur les performances ;
  5. Après avoir compris comment la decorator pattern a été appliquée à la conception des classes IO, il apparait que c'est une bonne idée, contrairement à ce qui était indiqué jusqu'ici ;
  6. Énormément de corrections et de modifications, et autant de corrections proposées par les lecteurs que possible, avant la date limite (l'ensemble des erreurs a été corrigé, mais toutes les suggestions n'ont pas été implémentées).

Version 10a, 14 Novembre 97

Cette nouvelle version corrige une erreur due à l'absence de la police Davanci Extras, seulement utilisée pour décorer le début des chapitres. Il semble que Acrobat ne peut inclure que des polices Adobe, mais pas de True Type, ce qui posait problème à l'ouverture du fichier. Cette correction ne change rien au contenu du livre.

En plus des corrections grammaticales, deux sections ont été ajoutées, une sur l'analyse et la conception dans le chapitre 1, l'autre sur l'utilisation des inner classes du premier exemple du chapitre 14. Une méthode main a aussi été ajoutée à BangBean2.java.

Si vous avez le moindre problème avec la police utilisée pour le corps du texte, prévenez daniel@will-harris.com.

A l'approche de la date de publication, les propositions d'exercices seraient aussi les bienvenues.

La mise en ligne de Thinking in Java a été une expérience extraordinaire, qui sera reconduite pour la seconde édition de Thinking in C++.

Version 10, 7 Novembre 97

Cette version comprend (enfin) un index, ainsi que de nombreuses améliorations et corrections. En dehors de quelques ajouts de sections, en particulier sur java 1.2, le contenu ne devrait plus changer beaucoup.

L'annexe A est rédigée par Andrea Provaglio, qui étudie ce sujet dans le cadre d'une présentation pour les conférences Software Development.

L'auteur tient à remercier toutes les personnes qui lui ont proposé des corrections. Si vous pensez que votre contribution a été conséquente et qu'il vous a oubliés, n'hésitez pas à le signaler.

Il est possible que certaines suggestions n'aient pas été prises en compte, soit par manque de temps, soit, plus rarement, à cause de difficultés d'implémentation.

Conditions d'utilisation

La version électronique restera disponible même après sa publication papier, l'auteur autorise l'impression d'un exemplaire à usage personnel.

Si vous appréciez ce livre, l'auteur demande seulement :

  1. de le recommander à vos amis ;
  2. de créer un lien vers son site ou d'en proposer un miroir ;
  3. de lui signaler toute erreur ou problème ;
  4. de penser à acheter le livre, c'est probablement moins cher que de l'imprimer soi-même ;
  5. de se renseigner sur ses séminaires de formation... mais les États-Unis sont encore un peu loin de l'Europe.

Téléchargement

Le fichier est au format PDF, vous aurez donc besoin du lecteur Acrobat d' Adobe.

Attention, si Acrobat Reader est installé, cliquez le bouton droit pour choisir la sauvegarde dans un fichier. Sinon, votre navigateur tentera d'afficher directement le livre dans la fenêtre.

Thinking in Java de janvier 1998, printabl.pdf (3475Kb)

Code source du livre

Pour installer le code source, il faut :

  1. Charger le fichier TIJsource.jar (575Kb).
  2. Si ce n'est pas déja fait, charger et installer le JDK de Sun (maintenant appelé J2SE), depuis le site : http://java.sun.com/j2se/index.jsp. Il contient l'utilitaire jar.
  3. Extraire les fichiers par la commande :
    jar xvf TIJsource.jar
    qui va automatiquement créer les répertoires nécessaires et installer les fichiers. Les archives jar sont des fichiers zip qui peuvent être décompressés avec n'importe quel outil supportant ce format.

En cas de problème, et surtout si vous trouvez la solution, n'hésitez pas à contacter l'auteur.

Solutions des exercices

Solutions choisies des exercices : solutions.zip (11Kb)

Autres Sites

Les sites miroirs de Thinking in Java sont listés sur la page : http://mindview.net/Books/TIJ/DownloadSites