Classe Inline.
Uma classe quase não faz nada e não é responsável por nada, e nenhuma responsabilidade adicional está planejada para ela.
Mova todas as funcionalidades da classe para outra.
##Exemplo
class Person {
private TelephoneNumber number = new TelephoneNumber();
String getNumber() { return number.getNumber(); }
}
class TelephoneNumber {
private String number;
String getNumber() { return number; }
}class Person {
private String number;
String getNumber() { return number; }
}##Por que refatorar
- 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.
##Benefícios
- Eliminar classes desnecessárias libera memória operacional no computador—e largura de banda na sua cabeça.
##Como refatorar
-
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.
-
Substitua todas as referências à classe doadora por referências aos campos e métodos da classe destinatária.
-
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.
-
Exclua a classe original.