1
resposta

Refatoração de código

Boa noite, tenho duas duvidas quanto ao codigo visto em aula.

Pergunta 1: O ideal não seria realizar essa atualização de dados numa classe service ?

Pergunta 2: É possivel otimizar essas funções de "atualizações de informações" com reflection, se sim, seria uma boa prática faze-las ?

public void atualizarInformacoes(DadosEndereco dados) {
        if (dados.logradouro() != null) {
            this.logradouro = dados.logradouro();
        }
        if (dados.bairro() != null) {
            this.bairro = dados.bairro();
        }
        if (dados.cep() != null) {
            this.cep = dados.cep();
        }
        if (dados.uf() != null) {
            this.uf = dados.uf();
        }
        if (dados.cidade() != null) {
            this.cidade = dados.cidade();
        }
        if (dados.numero() != null) {
            this.numero = dados.numero();
        }
        if (dados.complemento() != null) {
            this.complemento = dados.complemento();
        }
    }
}
1 resposta

Jonas, de boa?

Pergunta 1-

Tu vai ver inumeras pessoas falando que caso x ou y é melhor, no final das contas não existe uma receita para ser seguida pras coisas estarem certas, a classe service poderia sim ser usada, mas nem sempre é o jeito, já vi gente defendendo que era pra injetar o entity manager no proprio controller e usar lá mesmo (não compactuo com isso).

Pergunta 2-

Cara reflection geralmente vai fazer o código ser um pouco (bastante) mais complexo para ler e mexer, fora que o uso computacional talvez seja similar ou pior.. gosto de usar reflection apenas em casos onde eu vou receber uma string ou algum outro tipo de valor e preciso transformar isso num objeto, mas de novo, não é uma receita... eu sou do time que gosta de deixar as coisas mais simples, pq é mais tranquilo de mexer no futuro (acredite, vc vai precisar mexer no futuro e as vezes tu esqueceu o que o código faz e um codigo complicado dificulta imensamente teu trampo do futuro)