ConstructiCat Logo
CodeBust.
Browse section ▾

Classe Inline.

Problem

Uma classe quase não faz nada e não é responsável por nada, e nenhuma responsabilidade adicional está planejada para ela.

Solution

Mova todas as funcionalidades da classe para outra.

##Example

Antes
Person namegetTelephoneNumber() TelephoneNumber officeAreaCodeofficeNumbergetTelephoneNumber() 1
Depois
Person nameofficeAreaCodeofficeNumbergetTelephoneNumber()

##Why Refactor

  • Muitas vezes essa técnica é necessária depois que as funcionalidades de uma classe são “transplantadas” para outras classes, deixando essa classe com pouco a fazer.

##Benefits

  • Eliminar classes desnecessárias libera memória operacional no computador—e largura de banda na sua cabeça.

##How to Refactor

  1. Na classe destinatária, crie os campos e métodos públicos presentes na classe doadora. Os métodos devem referenciar os métodos equivalentes da classe doadora.

  2. Substitua todas as referências à classe doadora por referências aos campos e métodos da classe destinatária.

  3. Agora teste o programa e certifique-se de que nenhum erro foi adicionado. Se os testes mostrarem que tudo está funcionando perfeitamente, comece a usar Mover Método e Mover Campo para transplantar completamente toda a funcionalidade da classe original para a destinatária. Continue fazendo isso até que a classe original esteja completamente vazia.

  4. Exclua a classe original.