Falta pouco!

0 dias

0 horas

0 min

0 seg

1
resposta

[Dúvida] Boas práticas na construção de uma classe

Olá, como estão?

Após verificar o Opinião do Instrutor, verifiquei que as propriedades são declaradas antes do construtor, e ao ler os outros tópicos no fórum vi o mesmo padrão. Entretanto lembro de fazer algum curso de C# anterior e ler em alguma documentação da Microsoft que por convenção devemos criar construtores antes das propriedades.

Neste caso específico é apenas um exemplo sem seguir boas práticas ou o padrão supracitado não é seguido pelo fato dos campos serem implícitos?

Segue abaixo meu código com oq imaginei que fosse mais "padrão".

Passagem.cs:

namespace praticandoCSharp;

internal class Passagem
{    public Passagem(string passageiro, string destino)
    {
        Passageiro = passageiro;
        Destino = destino;
    }

    public string Passageiro { get; set; }
    public string Destino { get; set; }
}

Program.cs:

using praticandoCSharp;

Passagem passagem = new("Lucas Souza", "Paris");

Console.WriteLine($"Passageiro: {passagem.Passageiro}");
Console.WriteLine($"Destino: {passagem.Destino}");
1 resposta

Oi Pedro, tudo bem? 😊

A ordem dos membros de uma classe em C#, como propriedades e construtores, é geralmente uma questão de convenção e estilo pessoal.

Não existe uma regra rígida imposta pelo compilador C# que determine a ordem exata.

A ordem mais comum é:

  1. Campos (fields).
  2. Construtores.
  3. Propriedades.
  4. Métodos.

Mas isso pode variar dependendo das diretrizes de codificação da equipe ou da empresa.

No seu código, a ordem que você escolheu (construtor antes das propriedades) é perfeitamente aceitável.

O mais importante é manter a consistência dentro do seu projeto. 👍

Se você viu exemplos onde as propriedades são declaradas antes do construtor, isso pode ser apenas uma preferência de estilo do instrutor ou um padrão adotado em um determinado contexto.

Ambas as abordagens são válidas. 🤔

Quanto aos campos serem implícitos, isso não afeta a ordem preferencial dos membros da classe.

Campos implícitos (ou propriedades automáticas) são apenas uma forma mais concisa de declarar propriedades simples.

🎓 Para saber mais:

Espero ter ajudado! 💪