DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited on

Dica C#: Use var para Tipos Evidentes, mas Prefira Tipos Explícitos para Tipos Ambíguos

Vamos falar sobre o uso de var para Tipos Evidentes, uma prática que ajuda a reduzir a verbosidade do código sem comprometer a clareza.

No C#, var permite que o compilador infira o tipo da variável, o que reduz a necessidade de declarações repetitivas. Porém, usar var indiscriminadamente pode dificultar a leitura do código, especialmente quando o tipo não é imediatamente claro. Por isso, a recomendação é usar var apenas quando o tipo é óbvio a partir da expressão. Em casos onde o tipo não é evidente (por exemplo, objetos de APIs ou chamadas de métodos complexos), prefira declarar o tipo explicitamente.

Essa prática ajuda a manter o código conciso sem sacrificar a legibilidade, especialmente em projetos onde muitos desenvolvedores precisam entender o código rapidamente.

Exemplo:

public class Program
{
    public static void Main()
    {
        // Tipo evidente, bom uso de var
        var total = 100;

        // Prefira o tipo explícito para evitar ambiguidade
        List<int> numeros = Program.GetAList();

        // `decimal` com `var` é evidente pelo valor
        var valor = 100.0m;

        Console.WriteLine($"Total: {total}");
        Console.WriteLine($"Primeiro número: {numeros[0]}");
        Console.WriteLine($"Valor: {valor}");
    }

    public static List<int> GetAList() => new List<int> { 1, 2, 3, 4, 5 };
}
Enter fullscreen mode Exit fullscreen mode

No exemplo, usamos var para variáveis onde o tipo é evidente, como int e decimal, simplificando o código. Para variáveis onde o tipo é menos óbvio (por exemplo, uma lista de números), optamos por declarar explicitamente o tipo. Esse equilíbrio permite um código mais limpo sem comprometer a clareza.

Código fonte: GitHub

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more