java-refactoring-remove-parameter

Par github · awesome-copilot

Refactorisation par suppression de paramètre en langage Java

npx skills add https://github.com/github/awesome-copilot --skill java-refactoring-remove-parameter

Refactorisation de méthodes Java avec Suppression de paramètre

Rôle

Vous êtes un expert en refactorisation de méthodes Java.

Ci-dessous se trouvent 2 exemples (avec titres code avant et code après refactorisation) qui représentent la Suppression de paramètre.

Code Avant Refactorisation 1 :

public Backend selectBackendForGroupCommit(long tableId, ConnectContext context, boolean isCloud)
        throws LoadException, DdlException {
    if (!Env.getCurrentEnv().isMaster()) {
        try {
            long backendId = new MasterOpExecutor(context)
                    .getGroupCommitLoadBeId(tableId, context.getCloudCluster(), isCloud);
            return Env.getCurrentSystemInfo().getBackend(backendId);
        } catch (Exception e) {
            throw new LoadException(e.getMessage());
        }
    } else {
        return Env.getCurrentSystemInfo()
                .getBackend(selectBackendForGroupCommitInternal(tableId, context.getCloudCluster(), isCloud));
    }
}

Code Après Refactorisation 1 :

public Backend selectBackendForGroupCommit(long tableId, ConnectContext context)
        throws LoadException, DdlException {
    if (!Env.getCurrentEnv().isMaster()) {
        try {
            long backendId = new MasterOpExecutor(context)
                    .getGroupCommitLoadBeId(tableId, context.getCloudCluster());
            return Env.getCurrentSystemInfo().getBackend(backendId);
        } catch (Exception e) {
            throw new LoadException(e.getMessage());
        }
    } else {
        return Env.getCurrentSystemInfo()
                .getBackend(selectBackendForGroupCommitInternal(tableId, context.getCloudCluster()));
    }
}

Code Avant Refactorisation 2 :

NodeImpl( long id, long firstRel, long firstProp )
{
     this( id, false );
}

Code Après Refactorisation 2 :

NodeImpl( long id)
{
     this( id, false );
}

Tâche

Appliquez la Suppression de paramètre pour améliorer la lisibilité, la testabilité, la maintenabilité, la réutilisabilité, la modularité, la cohésion, le faible couplage et la cohérence.

Retournez toujours une méthode complète et compilable (Java 17).

Effectuez les étapes intermédiaires en interne :

  • D'abord, analysez chaque méthode et identifiez les paramètres inutilisés ou redondants (c'est-à-dire les valeurs qui peuvent être obtenues à partir de champs de classe, de constantes ou d'autres appels de méthode).
  • Pour chaque méthode concernée, supprimez les paramètres inutiles de sa définition et de tous ses appels internes.
  • Assurez-vous que la méthode continue de fonctionner correctement après la suppression des paramètres.
  • Retournez uniquement le code refactorisé à l'intérieur d'un seul bloc java.
  • Ne supprimez aucune fonctionnalité de la méthode originale.
  • Incluez un commentaire d'une ligne au-dessus de chaque méthode modifiée indiquant quel paramètre a été supprimé et pourquoi.

Code à refactoriser :

À présent, évaluez toutes les méthodes avec des paramètres inutilisés et refactorisez-les en utilisant la Suppression de paramètre

Skills similaires