DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited on

Dica C#: Use const para Valores Verdadeiramente Constantes

Vamos falar sobre o uso de const para Valores Verdadeiramente Constantes, uma prática que garante que valores fixos permaneçam imutáveis em tempo de compilação, tornando o código mais eficiente.

Explicação:

Declarar uma variável como const significa que ela é uma constante de tempo de compilação, ou seja, seu valor é fixo e não pode ser alterado em tempo de execução. O const é ideal para valores que não mudam nunca, como números matemáticos ou valores padrão que não dependem de nenhuma lógica. Diferente de readonly, o const é mais restritivo, pois seu valor deve ser atribuído imediatamente e não pode depender de variáveis dinâmicas ou do construtor.

Essa prática ajuda a melhorar a performance, já que o compilador trata const como uma substituição direta do valor, otimizando o uso de recursos.

Código:

public class Matematica
{
    public const double PI = 3.14159;

    public double CalcularCircunferencia(double raio)
    {
        return 2 * PI * raio;
    }
}

public class Program
{
    public static void Main()
    {
        Matematica matematica = new Matematica();
        double circunferencia = matematica.CalcularCircunferencia(5);
        Console.WriteLine($"Circunferência: {circunferencia}");
    }
}
Enter fullscreen mode Exit fullscreen mode

Explicação do Código:

No exemplo, temos uma classe Matematica que define a constante PI com const. Como PI é um valor fixo e universal, const garante que ele seja imutável e aproveitado em tempo de compilação, melhorando a performance.

O uso de const para Valores Verdadeiramente Constantes garante que valores fixos permaneçam imutáveis e otimizados em tempo de compilação, resultando em um código mais eficiente e seguro. Essa prática é ideal para valores universais e que nunca mudam.

Espero que essa dica ajude você a usar const para otimizar e proteger valores constantes no seu código! Até a próxima.

Código fonte: GitHub

Top comments (0)