ConstructiCat Logo
CodeBust.
Browse section ▾

Remover Parâmetro.

Problem

Um parâmetro não é usado no corpo de um método.

Solution

Remova o parâmetro não utilizado.

##Example

Antes
Customer +getContact(Date)
Depois
Customer getContact()

##Why Refactor

Todo parâmetro em uma chamada de método obriga o programador que a lê a descobrir qual informação está contida nele. E se um parâmetro não é usado em momento algum no corpo do método, essa “coçada na cabeça” foi em vão.

E, de todo modo, parâmetros adicionais são código extra que precisa ser executado.

Às vezes adicionamos parâmetros de olho no futuro, antecipando mudanças no método para as quais o parâmetro poderia ser necessário. Ainda assim, a experiência mostra que é melhor adicionar um parâmetro apenas quando ele é genuinamente necessário. Afinal, as mudanças antecipadas muitas vezes continuam sendo apenas isso—antecipadas.

##Benefits

  • Um método contém apenas os parâmetros de que realmente precisa.

##How to Refactor

  1. Veja se o método está definido em uma superclasse ou subclasse. Se estiver, o parâmetro é usado lá? Se o parâmetro for usado em uma dessas implementações, adie esta técnica de refatoração.

  2. O próximo passo é importante para manter o programa funcional durante o processo de refatoração. Crie um novo método copiando o antigo e remova dele o parâmetro em questão. Substitua o código do método antigo por uma chamada ao novo.

  3. Encontre todas as referências ao método antigo e substitua-as por referências ao novo método.

  4. Exclua o método antigo. Não execute este passo se o método antigo fizer parte de uma interface pública. Nesse caso, marque o método antigo como obsoleto (deprecated).