---
title: "Supprimer un paramètre"
type: "refactoring-technique"
slug: "remove-parameter"
url: "http://localhost:3000/fr/remove-parameter.md"
category: "Simplifying Method Calls"
description: "Problème : un paramètre n’est pas utilisé dans le corps d’une méthode. Solution : supprimez le paramètre inutilisé."
---
# Supprimer un paramètre

> Problème : un paramètre n’est pas utilisé dans le corps d’une méthode. Solution : supprimez le paramètre inutilisé.

## Problem

Un paramètre n’est pas utilisé dans le corps d’une méthode.

## Solution

Supprimez le paramètre inutilisé.

## Why Refactor

Chaque paramètre d’un appel de méthode oblige le programmeur qui le lit à comprendre quelle information se trouve dans ce paramètre. Et si un paramètre n’est absolument pas utilisé dans le corps de la méthode, cette « gymnastique mentale » est inutile.

Et de toute façon, des paramètres supplémentaires représentent du code en plus à exécuter.

Il nous arrive d’ajouter des paramètres en pensant à l’avenir, en anticipant des modifications de la méthode pour lesquelles le paramètre pourrait être nécessaire. Pourtant, l’expérience montre qu’il vaut mieux ajouter un paramètre uniquement lorsqu’il est réellement nécessaire. Après tout, les modifications anticipées restent souvent juste cela : anticipées.

## Benefits

* Une méthode ne contient que les paramètres dont elle a réellement besoin.

## How to Refactor

1. Vérifiez si la méthode est définie dans une superclasse ou une sous-classe. Si c’est le cas, le paramètre y est-il utilisé ? Si le paramètre est utilisé dans l’une de ces implémentations, renoncez à cette technique de refactorisation.
2. L’étape suivante est essentielle pour que le programme reste fonctionnel pendant le processus de refactorisation. Créez une nouvelle méthode en copiant l’ancienne et supprimez-en le paramètre concerné. Remplacez le code de l’ancienne méthode par un appel à la nouvelle.
3. Trouvez toutes les références à l’ancienne méthode et remplacez-les par des références à la nouvelle méthode.
4. Supprimez l’ancienne méthode. N’effectuez pas cette étape si l’ancienne méthode fait partie d’une interface publique. Dans ce cas, marquez l’ancienne méthode comme obsolète (deprecated).
## Relations

**Helps you do**

- [Remplacer un paramètre par un appel de méthode](/fr/replace-parameter-with-method-call.md)

**Similar techniques**

- [Renommer la méthode](/fr/rename-method.md)

**Opposite refactorings**

- [Ajouter un paramètre](/fr/add-parameter.md)

**Eliminates smells**

- [Généralité spéculative](/fr/smells/speculative-generality.md)

