Synopsis
Ce guide, écrit par un expert de Sun Microsystems, présente cinquante-sept règles de programmation concourant à l'écriture de programmes efficaces pour la plate-forme Java. Fruit de l'expérience des créateurs de Java et des défis de programmation relevés au quotidien, chaque règle illustre divers aspects du langage et de ses difficultés au moyen de conseils, recommandations - ce qu'il faut faire; ce qu'il ne faut pas faire - et d'exemples détaillés : son bon usage idiomatique, ses subtilités et ses pièges, ses patterns et antipatterns. Excédant la seule programmation Java, ces règles serviront de viatique pour la programmation objet en général et la production de code clair, correct, efficace, robuste et réutilisable. Les bibliothèques Java sont également abordées, ainsi que la sérialisation. Sommaire : Création et destruction d'objets : Privilégier des méthodes de fabrique statiques aux constructeurs, Appliquer la propriété du singleton avec un constructeur privé, etc.; Méthodes communes à tous les objets : Obéir au contrat général lors d'une redéfinition de la méthode equals, Toujours redéfinir hashCode lorsque equals est redéfini, etc.; Classes et Interfaces : Restreindre l'accès des classes et de leurs membres, Favoriser l'immuabilité, Préférer la composition à l'héritage, etc.; Équivalents pour constructions du langage C : Remplacer les structures par des classes, Remplacer une union par une hiérarchie de classes, etc.; Méthodes : Vérifier la validité d'un paramètre, Procéder à des recopies défensives en cas de besoin, Concevoir avec attention la signature d'une méthode, etc.; Programmation générale : Minimiser la portée des variables locales, Connaître et utiliser les bibliothèques, Éviter float et double si un résultat exact est requis, etc.; Exceptions; Threads; Sérialisation.
About the Author
Joshua Bloch, est chef de projet à Sun Microsystems, chargé en particulier de l'architecture au sein du Core Java Plateform Group. Ses réalisations (Java Collection Framework, java.math) et une thèse consacrée à la réplication d'objets de données abstraits lui ont valu de nombreux prix.
"About this title" may belong to another edition of this title.