Révision de code complète

La révision de code complète contient la version élaborée des catégories de règles. Toutes les autres révisions de code contiennent un sous-ensemble unique de ces catégories.

Rôle

La révision de code complète applique toutes les règles de toutes les catégories. Ces règles couvrent plusieurs niveaux de gravité : incident, avertissement et recommandation. Cette révision de code est la plus longue à effectuer.

Catégories de règles

Le tableau ci-après récapitule toutes les catégories et sous-catégories de la révision de code complète, ainsi qu'une description des règles de chacune d'elles. Dans la colonne de gauche, les catégories sont en gras et les sous-catégories en texte normal.

Catégorie ou sous-catégorie Description
Principes de conception Contient des règles pour les principes de conception de la programmation orientée objets
Complexités Contient des règles permettant d'éviter les parties de code inutilement complexes
Globalisation Contient des règles fondées sur les pratiques de codage recommandées en matière de globalisation. Ces règles visent à garantir que le code fonctionne correctement dans les environnements localisés
Localisation Contient les règles relatives aux options de formatage des données utilisées dans différents pays
Codage Contient les règles qui valident le codage de la globalisation
Gestion des environnements locaux Contient les règles qui valident les environnements locaux de la globalisation
Gestion des chaînes Contient les règles qui valident les opérations sur les chaînes pour la globalisation
Traduction Contient les règles qui valident le code de la conversion
Spécificités de l'interface graphique Contient les règles qui valident la présentation et le contenu de l'interface graphique pour la globalisation
Pratiques recommandées dans J2EE Contient des règles basées sur les pratiques de développement J2EE recommandées et prend en charge les projets Web destinés aux serveurs WebSphere
Validité Contient des règles permettant de détecter les appels de méthode incorrects
Conflits d'accès aux données Contient les règles permettant de détecter les appels de méthode susceptibles de provoquer des conflits d'accès aux données dans les applications J2EE
Récupération de place Contient les règles permettant de détecter les appels de méthode pouvant retarder la récupération de place
Maintenabilité Contient les règles permettant de détecter les éléments de code dont la maintenance peut s'avérer difficile dans les applications J2EE
Performances et extensibilité Contient les règles permettant de détecter les invocations de méthode qui entravent les performances ou limitent l'extensibilité d'une application J2EE
Gestion des ressources Contient les règles des pratiques recommandées dans J2EE pour l'utilisation de ressources dans des applications J2EE
Pratiques recommandées dans J2SE Contient les règles qui valident le code de compatibilité avec les pratiques recommandées dans J2SE pour le développement Java
AWT Contient les règles qui détectent les problèmes liés à l'utilisation de la bibliothèque Abstract Window Toolkit
Transtypage Contient les règles qui détectent les problèmes liés au transtypage et au forçage de type
Clonable Contient les règles qui détectent les problèmes liés au clonage des objets
Comparaison Contient les règles qui détectent les problèmes liés à la comparaison des objets et au test d'égalité des objets
Conditionnel Contient les règles qui détectent les problèmes liés à l'utilisation de conditions
Constructeurs Contient les règles qui détectent les problèmes liés à la définition et l'implémentation de constructeurs
Déclaration Contient les règles qui détectent les problèmes liés à la déclaration des constantes, des variables et des champs
Exceptions Contient les règles qui détectent les problèmes liés au traitement des exceptions
Initialisation Contient les règles qui détectent les problèmes liés à l'initialisation des primitives et des objets
Boucle Contient les règles qui détectent les problèmes liés à l'utilisation de boucles
Valeur NULL Contient les règles qui détectent les problèmes liés à l'utilisation de la valeur NULL
Portabilité Contient les règles qui détectent les problèmes liés à la portabilité
Réflexion Contient les règles qui détectent les problèmes liés à l'utilisation de la réflexion
Sérialisation Contient les règles qui détectent les problèmes liés à la sérialisation
Instruction Contient les règles qui détectent les problèmes généraux des instructions
Switch Contient les règles qui détectent les problèmes liés à l'utilisation d'instructions switch
Unités d'exécution Contient les règles qui détectent les problèmes liés à l'utilisation d'unités d'exécution
Conventions de dénomination Contient les règles de dénomination des éléments dans le code Java
Conflits Contient les règles permettant de garantir que les noms affectés aux éléments sont cohérents dans le code Java
Performances Contient les règles qui appliquent les suggestions d'amélioration des performances et de réduction de la quantité de mémoire requise dans les applications Java
Mémoire Contient les règles qui détectent les problèmes de performances liés à la quantité de mémoire utilisée
Profilage Contient les règles qui détectent les éventuels problèmes de performances liés aux activités de profilage
Vitesse Contient les règles qui recommandent des méthodes d'amélioration de la vitesse d'exécution du code Java
API privée Contient les règles qui identifient les API n'appartenant pas au code Java
Eclipse Contient les règles qui identifient les API n'appartenant pas au code Java
Sun Contient les règles qui identifient les API n'appartenant pas au code Java
WebSphere Contient les règles qui identifient les API n'appartenant pas au code Java
Analyse structurelle Contient un ensemble de règles permettant de réviser l'architecture du code
Breakable Contient les règles permettant de baliser les objets comportant un grand nombre de dépendances immédiates
Dépendance cyclique Contient les règles permettant de baliser les dépendances cycliques entre les objets
Hub Contient les règles permettant de baliser les objets comportant un grand nombre de dépendances et dépendants immédiats

Exemple de règle

La règle suivante est un exemple de règle appliquée dans la révision de code complète. Elle appartient à la catégorie Pratiques recommandées dans J2SE, dans la sous-catégorie Comparaison :
Remplacez toujours
java.lang.Object.equals() et java.lang.Object.hashCode()
Conditions d'utilisation | Retours d'informations
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.