Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 1 da Aula 3 - Ifs e Switches

Pessoal, boa tarde

Sobre refatorar o cálculo do imposto, tenho essa opinião e gostaria da ajuda de vocês:

O método abaixo faz duas coisas diferentes: calcula o imposto (valor * taxa) e descobre a taxa a ser aplicada. Não seria melhor separar o cálculo da taxa? Se, por exemplo, o cálculo mudar, a taxa permanece inalterada, ou vice-versa.

    public double getImpostos() {

        double imposto = 0;
        if(valorBruto < 200) {
            imposto = valorBruto * 0.03;
        }
        else if(valorBruto > 200 && valorBruto <= 1000) {
            imposto = valorBruto * 0.06;
        }
        else {
            imposto = valorBruto * 0.07;
        }

        return imposto;

    }

Ficaria assim:

    public double getImpostos() {        
        return valorBruto * getTaxaImposto();    
    }

    private double getTaxaImposto() {
        double taxa = 0;

        if(valorBruto < 200) {
            taxa = 0.03;
        }
        else if(valorBruto > 200 && valorBruto <= 1000) {
            taxa = 0.06;
        }
        else {
            taxa = 0.07;
        }
        return taxa;
    }
1 resposta
solução!

Rodrigo, Boa noite !

sim sempre é bom separar os comportamentos , acredito que no curso mais adiante será feito isso .

mas de qualquer forma boa observação . Obrigado .

Bons Estudos