Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

[Sugestão] Resposta sugerida pelo curso

Olá a resposta sugerida pelo curso para a questão ao meu ver fere um dos padrões de projeto do S.O.L.I.D. Que seria o SRP(Single Responsability Principle), uma vez que você adiciona a classe de builder mais uma responsabilidade que é de notificar uma ação de instância. Seria interessante desacoplar essa parte de notificação para uma classe que teria essa responsabilidade isso.

4 respostas

vc poderia inicializar a variável produto no construtor, o código ficaria mais limpo, ficaria dessa forma

    public class Produto
    {
        public string nome;
        public string fabricante;
        public float codigoDeBarras;
        public double valorUnitario;
        public double valorDeCompra;
        public int quantidade;
    }

    public Produto (string nomeProduto, string fabricanteProtudo, 
    float codigoDeBarrasProduto, double valorUnitarioProduto, 
    double valorDeCompraProduto, int quantidadeProduto) 
    {
        nome = nomeProduto;
        fabricante = fabricanteProduto
        codigoDeBarras = codigoDeBarrasProduto
        valorUnitario = valorUnitarioProduto
        valorDeCompra = valorDeCompraProduto
        quantidade = quantidadeProduto
    }

assim com essa classe de produtos criada bastaria vc criar as variáveis no Program dessa forma:

Produto Produto1 = new Produto("Banana Nanica", "MD Alimentos", 001, 2.25, 1.75, 80);

Produto Produto2 = new Produto("Cenoura", "MD Alimentos", 002, 1.90, 1.25, 70);

Produto Produto3 = new Produto("Batata", "MD Alimentos", 003, 2.50, 1.85, 20 );

double totalDaCompra = (Produto3.valorDeCompra + Produto2.valorDeCompra + Produto1.valorDeCompra);

Console.WriteLine("o valor da compra é " + totalDaCompra);

vc pode entender esse conceito melhor utilizando a documentação da microsoft também https://learn.microsoft.com/pt-br/dotnet/csharp/programming-guide/classes-and-structs/constructors

esse post nao é uma duvida e sim uma sugestão de melhora da do curso.

solução!

Bom dia Luca, tudo bom?

Primeiramente obrigado por sua contribuição, iremos olhar com carinho a sua colocação. Estes curso estão para entrar para o processo de atualização em futuro próximo.

Att.

Obrigado pelo retorno André.