38. Quando for necessário alterar o código e ele não está estruturado de modo
adequado para receber essa modificação, primeiro refatore o programa para
tornar a modificação mais fácil de ser realizada, e então faça a modificação.
39. Método muito longo!
• Ter mais métodos curtos
é uma opção melhor
Mais claro
Mais gerenciável
40. Quando você tem um fragmento de código que pode ser manipulado como um grupo:
Transforme o fragmento em um método cujo nome explique o propósito do método
https://refactoring.guru/extract-method
50. Quando um método usa mais características de outra classe que da classe na
qual ele está alocado:
Crie um novo método com corpo similar na classe que ele mais usa.
Transforme o método original em uma delegação ou, se for o caso, remova-o.
https://refactoring.guru/move-method
69. Você tem uma variável temporária que recebe um valor uma vez a partir
de uma expressão simples e a variável temporária pode atrapalhar a
aplicação de outras refatorações:
Troque todas as referências à variável temporária pela expressão.
https://refactoring.guru/inline-temp
70.
71. Verificar que atribuição é a única:
Substituir usos da variável pelo lado direito da atribuição:
E testar...
77. Você está usando uma variável temporária para manter o resultado de
uma expressão:
Extraia a expressão para um método. Substitua todas as referências
para a variável temporária pelo novo método. O novo método poderá
então ser utilizado em outros métodos
https://refactoring.guru/replace-temp-with-query
94. Você tem um código de tipo que afeta o comportamento de uma
classe, mas você não pode usar herança diretamente:
Substitua o código de tipo com um objeto de estado
https://refactoring.guru/replace-type-code-with-state-strategy
95.
96. Você está acessando um atributo diretamente, mas o forte
acoplamento em relação a esse atributo está se tornando problemático:
Crie métodos get...() e set...() para esse atributo e use apenas esses
métodos para acessar o atributo
https://refactoring.guru/self-encapsulate-field