1
resposta

[Dúvida] Desafio 5

Estaria certo??? Modelar um sistema para um restaurante com classes como Restaurante, Mesa, Pedido e Cardapio. A classe Restaurante deve ter mesas que podem ser reservadas e um cardápio com itens que podem ser pedidos. Os pedidos podem estar associados a uma mesa.

class Restaurante {
    public string Nome { get; set; }

    class Cardapio
    {
        public List<string> OpcaoMenu = new List<string> { "Peixe", "Sugestão do Chefe", "Camarão", "" };
        public void ExibirMenu()
        {
            foreach (var opcao in OpcaoMenu)
            {
                Console.WriteLine($" Aqui esta nosso menu {opcao}");
            }

        }
     
    class Mesa{
        public string NomeCliente { get; set;}
        public int NumeroMesa { get; set; }
        public int QuntidadePessoas {  get; set; }
        
        
        

        class Pedido {
            public string PedidoCliente { get;set;}   

        }

    }

   
    }
}
1 resposta

Olá, Amanda! Como vai?

Você fez um bom trabalho na modelagem do sistema de um restaurante. Tenho algumas dicas que você pode fazer para melhorar a organização e a lógica do seu código.

Primeiramente, as classes Cardapio, Mesa e Pedido estão todas aninhadas dentro da classe Restaurante, o que pode não ser a melhor abordagem. Em vez disso, você pode definir essas classes separadamente e, em seguida, ter instâncias delas como propriedades da classe Restaurante.

Além disso, você pode querer adicionar uma lista de Mesa e Cardapio na classe Restaurante, para representar as mesas do restaurante e o cardápio disponível. Na classe Mesa, você pode querer adicionar uma lista de Pedido para representar os pedidos feitos em uma mesa específica.

Aqui está um exemplo de como você pode reestruturar seu código:

public class Restaurante 
{
    public string Nome { get; set; }
    public List<Mesa> Mesas { get; set; }
    public Cardapio Cardapio { get; set; }
}

public class Cardapio
{
    public List<string> OpcaoMenu { get; set; }

    public void ExibirMenu()
    {
        foreach (var opcao in OpcaoMenu)
        {
            Console.WriteLine($" Aqui esta nosso menu {opcao}");
        }
    }
}

public class Mesa
{
    public string NomeCliente { get; set; }
    public int NumeroMesa { get; set; }
    public int QuntidadePessoas { get; set; }
    public List<Pedido> Pedidos { get; set; }
}

public class Pedido 
{
    public string PedidoCliente { get; set; }   
}

Neste exemplo, cada Restaurante tem uma lista de Mesa e um Cardapio. Cada Mesa tem uma lista de Pedido. Esta é apenas uma sugestão de como você pode estruturar seu código, sinta-se à vontade para fazer as alterações que achar necessárias.

Boa sorte nos estudos!