DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited on

Dica C#: Declarações using Aprimoradas

Vamos falar sobre as Declarações using Aprimoradas, introduzidas no C# 8, que permitem a inicialização de objetos descartáveis de forma mais concisa, sem a necessidade de blocos using aninhados. Veja o exemplo no código abaixo.

public class Program
{
    public static void Main()
    {
        using var arquivo = new System.IO.StreamWriter("arquivo.txt");
        arquivo.WriteLine("Escrevendo no arquivo sem usar blocos de using.");

        // O StreamWriter será automaticamente fechado ao final do método
    }
}
Enter fullscreen mode Exit fullscreen mode

Explicação:

No C# 8, as Declarações using Aprimoradas simplificam o uso de objetos que implementam a interface IDisposable. Ao invés de precisar usar blocos using { } que criam um novo escopo, você pode simplesmente declarar um using no início do método, e o objeto será automaticamente descartado quando o método terminar. Isso torna o código mais limpo e reduz a quantidade de indentação, especialmente quando há múltiplos objetos descartáveis no mesmo método.

Essa funcionalidade é particularmente útil quando se trabalha com recursos como arquivos, conexões de rede ou streams, que precisam ser liberados adequadamente após o uso.

Código fonte: GitHub

Espero que essa dica ajude você a usar Declarações using Aprimoradas para simplificar a manipulação de objetos descartáveis em seus projetos! Até a próxima.

AWS GenAI LIVE image

How is generative AI increasing efficiency?

Join AWS GenAI LIVE! to find out how gen AI is reshaping productivity, streamlining processes, and driving innovation.

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

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay