Olá, tubo bem?!
Frequentemente vemos o uso de variáveis locais realizarem operações e/ou ações.
<?php
$basePrice = $this->quantity * $this->itemPrice;
if ($basePrice > 1000){
return $basePrice * 0.95;
}
else{
return $basePrice * 0.98;
}
Por que devemos refatorar?
- Abrirá portas para utilizarmos o Extract Methods.
- Podemos reutilizar a mesma expressão em outras partes do sistema.
- Facilitamos as modificações/implementações de regras de negócio.
Solução para o problema!
Devemos extrair a lógica responsável por realizar a operação e limpamos o processo de execução do código.
<?php
if ( $this->basePrice() > 1000 ){
return $this->basePrice() * 0.95;
}
return $this->basePrice() * 0.98;
...
public function basePrice()
{
return $this->quantity * $this->itemPrice;
}
Benefícios!
- Códigos mais legíveis.
- Códigos mais enxutos.
- Manuteníveis.
- Reutilizáveis.
Espero que tenha apreciado o conteúdo, ele foi inspirado no documento Refactogin Guru.
Convido a interagir nos comentários e a compartilhar com seus amigos.
Obrigado pela atenção e sucesso em seus projetos!