Aller au contenu principal

Java efficace

Guide de programmation
juin 2002 | 272 pages
ISBN : 978-2-7117-4805-1

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 plateforme Java.... Voir la suite

Livre 35,90 €
Disponible
Ajouter au panier

Description

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 plateforme Java. Sommaire Chapitre 1Présentation Chapitre 2Création et destruction d’objets1.   Privilégier des méthodes de fabrique statiques aux constructeurs  2.   Appliquer la propriété du singleton avec un constructeur privé  3.   Empêcher l’instanciation avec un constructeur privé  4.   Empêcher la duplication d’objets  5.   Éliminer les références d’objets obsolètes  6.   Éviter les finaliseurs  Chapitre 3Méthodes communes à tous les objets7.   Obéir au contrat général lors d’une redéfinition de la méthode equals8.   Toujours redéfinir hashCode lorsque equals est redéfini  9.   Toujours redéfinir toString10. Redéfinir judicieusement clone11. Envisager l’implémentation de Comparable livre.book  Chapitre 4Classes et Interfaces12. Restreindre l’accès des classes et de leurs membres  13. Favoriser l’immuabilité  14. Préférer la composition à l’héritage  15. Prévoir et documenter l’héritage ou bien l’interdire  16. Préférer les interfaces aux classes abstraites  17. N’utiliser les interfaces que pour définir les types  18. Favoriser les classes imbriquées statiques  Chapitre 5Équivalents pour constructions du langage C19. Remplacer les structures par des classes  20. Remplacer une union par une hiérarchie de classes  21. Remplacer les constructions enum par des classes  22. Remplacer les pointeurs de fonctions par des classes et des interfaces  Chapitre 6Méthodes23. Vérifier la validité d’un paramètre  24. Procéder à des recopies défensives en cas de besoin  25. Concevoir avec attention la signature d’une méthode  26. Utiliser la surcharge avec discernement  27. Renvoyer des tableaux vides plutôt que null28. Écrire des commentaires de documentation pour tous les éléments exposés d’une API  Chapitre 7Programmation générale29. Minimiser la portée des variables locales  30. Connaître et utiliser les bibliothèques  31. Éviter float et double si un résultat exact est requis  32. Éviter les chaînes de caractères là où d’autres types sont plus appropriés  33. Attention à la performance dans la concaténation de chaînes de caractères  34. Faire référence à un objet via son interface  35. Préférer les interfaces à la réflexion  36. Utiliser judicieusement les méthodes natives  37. Optimiser judicieusement  38. Suivre les conventions de nommage généralement acceptées  Chapitre 8Exceptions39. N’utiliser une exception que dans des situations exceptionnelles  40. Utiliser une exception vérifiée pour une situation récupérable et une exception non vérifiée pour une erreur de programmation  41. Ne pas abuser des exceptions vérifiées  42. Préférer l’utilisation d’une exception standard  43. Lever des exceptions en rapport avec l’abstraction  44. Documenter toutes les exceptions levées par une méthode  45. Inclure l’information de contexte dans les messages détaillés  46. Garantir l’atomicité d’une erreur  47. Ne pas ignorer une exception  Chapitre 9Threads48. Synchroniser l’accès à toute donnée partagée et muable  49. Éviter toute synchronisation excessive  50. Ne jamais invoquer wait en dehors d’une boucle  51. Ne pas s’appuyer sur l’ordonnanceur de threads  52. Documenter la sûreté des threads  53. Éviter les groupes de threads  Chapitre 10Sérialisation54. Implémenter judicieusement Serializable55. Envisager l’utilisation d’une sérialisation sur mesure  56. Rédiger la méthode readObject de manière défensive  57. Fournir une méthode read Resolve lorsque cela est nécessaire 

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 (java.lang, java.util et dans une moindre mesure java.io) sont également abordées, ainsi que la sérialisation.

« J'aurais voulu avoir ce livre il y a dix ans. Certains peuvent penser que je n'ai besoin d'aucun livre sur Java, mais celui-ci fait exception. » James Gosling, ancien vice-président de Sun Microsystems, co-créateur du langage Java.

Fiche technique

Titre Java efficace
Edition 1re édition
Date de parution juin 2002
Nombre de pages 272 pages
Poids 444 g
ISBN-13 9782711748051
Type Livre