Replace Query with Parameter
🎓 College: Faculdade Metodista Granbery
FOWLER, Martin. “Replace Query with Parameter” no código. In: REFATORAÇÃO: Aperfeiçoando o design de códigos existentes. 2. ed. [S. l.: s. n.], 2019. cap. 11.
Método
Objetivo desse método e retirar a consulta dentro função que está em uma dependência indesejada e trazer uma função que traga sempre o mesmo resultado que se chama transparência referencial.
Código
O código que escolhi foi uma atividade dado em aula pelo Professor Ricardo. Essa função recebe um parâmetro de nomes de coluna do dataset, os dados são verificados pela sua severidade e depois ocorre sua substituição dos valores ausentes de acordo com o seu tipo.
O código pode ser encontrado na plataforma Kaggle
Ferramentas
pip install ipytest
pip install testbook
pip install pandas
pip install jupyter
Objetivo da atividade
- Elabore ou escolha um código que a refatoração possa ser aplicada.
- Identifique o mau cheiro associado.
- Escreva os casos de teste e execute
- Aplique a refatoração
- Execute os casos de teste novamente
- Documente cada etapa para a apresentação
Mau Cheiro
Lista longa de parâmetros
O mau cheiro que encontrei dentro do código abaixo foi o lista longa de parâmetros, sendo que esse mal cheiro é para método ‘Replace Parameter with Query’, mas esse método e o inverso do ‘Replace Query with Paramater’, sendo assim o seu mal cheiro será o inverso. O mal cheiro será de consultas longas que trazem confusão para realizar a compreensão do código.