Formate o código programaticamente com o formato .NET.
Neste artigo, vamos percorrer o processo de formatação programática do seu código C# .NET usando a ferramenta dotnet format. Este guia é baseado no tutorial em vídeo de Gerald Versluis sobre " Formatar seu código C# .NET automaticamente com o DotNet Format ", onde ele demonstra como usar a ferramenta de forma eficaz para garantir que seu código esteja em conformidade com os padrões de formatação consistentes. Vou fornecer marcações de tempo e explicações detalhadas do que Gerald fez no vídeo para ajudá-lo a acompanhar e aplicar essas técnicas aos seus projetos.
Introdução ao formato .NET
Em (0:36), Gerald apresenta o formato dotnet como uma ferramenta projetada para formatar código C# com base nas regras definidas em um arquivo .editorconfig. Este arquivo é fundamental para garantir estilos de codificação consistentes em todo o seu projeto. Isso garante que todo o código siga as mesmas diretrizes de formatação, que podem incluir:
- Estilo de recuo : Indica se deve usar tabulações ou espaços.
- Regras de espaçamento : A quantidade de espaço ao redor dos operadores, suportes, etc.
- Estrutura do código : Como as construções de linha única e de múltiplas linhas são formatadas.
Ao aplicar essas regras, o formato .NET ajuda a manter uma base de código uniforme, tornando-a mais fácil de ler e gerenciar.
Entendendo o arquivo .editorconfig
O arquivo .editorconfig, conforme explicado por Gerald em (0:48), especifica várias preferências de estilo de codificação. Este arquivo é altamente flexível e permite definir uma ampla gama de regras de formatação, incluindo:
- Preferências de recuo : Determina se serão usadas tabulações ou espaços para o recuo e quantos espaços serão usados.
- Diretrizes de espaçamento : Controla o espaçamento em torno de elementos de código como operadores, chaves e palavras-chave.
- Outras regras de formatação : Define regras de estilo adicionais para garantir a consistência do código.
O arquivo .editorconfig serve como um ponto central de configuração para a formatação de código em diferentes editores e IDEs.
Visão geral da ferramenta de formatação DotNet
Gerald explica que o formato dotnet é uma ferramenta global para o runtime .NET em (1:13). Por ser uma ferramenta global, ela pode ser instalada uma única vez e usada em diversos projetos .NET no seu sistema. Isso permite uma formatação de código consistente sem a necessidade de instalações ou configurações separadas para cada projeto.
Você pode acessar o repositório do formato dotnet no GitHub em (1:26). Este repositório fornece o código-fonte, a documentação e informações adicionais sobre a ferramenta, ajudando os usuários a entender suas funcionalidades e a se manterem atualizados com as versões mais recentes.
Uso básico do formato .NET
Em (2:09), Gerald demonstra o comando básico para usar o formato dotnet:
dotnet format <options> <workspace>
dotnet format <options> <workspace>
O que é um espaço de trabalho?
No contexto do formato .NET, o termo "workspace" refere-se ao escopo do código que será formatado. Isso pode incluir:
- Um arquivo de solução : O arquivo .sln que engloba vários projetos.
- Um arquivo de projeto : um arquivo .csproj individual contendo arquivos de código específicos.
- Uma pasta : Um diretório que contém vários arquivos de código, incluindo arquivos .cs e, potencialmente, arquivos .vb.
A flexibilidade para especificar diferentes tipos de espaços de trabalho permite aplicar formatação em vários níveis do seu projeto.
Características e opções
Gerald destaca vários recursos e opções importantes do formato dotnet em (2:27):
- Correção automática : A ferramenta pode corrigir automaticamente problemas de formatação com base nas regras definidas no seu arquivo .editorconfig. Isso é útil para manter um estilo de código consistente em todo o seu projeto sem intervenção manual.
- Verificar apenas : Se preferir verificar problemas de formatação sem fazer alterações, você pode usar a ferramenta para verificar apenas se há problemas. Essa funcionalidade é particularmente útil em pipelines de integração contínua (CI).
Opções avançadas e personalização
Gerald explora opções avançadas e de personalização. Ele menciona:
- Nível de gravidade : Permite especificar quais níveis de gravidade dos problemas devem ser corrigidos. Isso ajuda a identificar tipos específicos de problemas de formatação.
- Incluir/Excluir Arquivos : Você pode controlar quais arquivos serão incluídos ou excluídos da formatação. Isso é útil para se concentrar em partes específicas do seu código.
- Verificar somente com código de saída : Ao usar a opção de verificação, você pode verificar se há algum problema de formatação sem aplicar correções. O código de saída indicará se foram encontrados problemas.
- Relatório JSON : Gera um relatório detalhado em formato JSON, fornecendo informações sobre o estado de formatação do seu código.
- Nível de detalhamento : Defina o nível de detalhamento para controlar a quantidade de informações geradas.
- Versão da ferramenta : Verifique a versão do formato .NET para garantir a compatibilidade com seu projeto e manter-se atualizado com os novos recursos.
Instalação da ferramenta Dotnet Format
Gerald começa explicando o processo de instalação da ferramenta dotnet format, que é essencial para formatar código C# programaticamente. Ele mostra como configurá-lo como uma ferramenta global com o seguinte comando:
dotnet tool install -g dotnet-format
dotnet tool install -g dotnet-format
Este comando garante que o formato dotnet esteja disponível globalmente, permitindo fácil acesso a partir de qualquer prompt de comando ou terminal. Gerald enfatiza a necessidade do ambiente de execução .NET Core , que deve ser instalado caso você tenha trabalhado com .NET recentemente.

Para confirmar que a instalação foi bem-sucedida, às (4:00), Gerald executa:
dotnet format /?
dotnet format /?
Este comando exibe a lista de opções e comandos disponíveis, verificando se o formato dotnet está instalado corretamente e pronto para uso.

Em (4:11), Gerald observa que algumas opções, como --dry-run, estão obsoletas e aconselha o uso de práticas atualizadas para formatação de código.
Aplicando correções de formatação de código
Verificando problemas de formatação
Usando o código-fonte do Xamarin Community Toolkit como exemplo prático, Gerald primeiro verifica se há problemas de formatação sem aplicar nenhuma alteração. Ele corre:
dotnet format . -f --check
dotnet format . -f --check
Identificar arquivos que precisam de formatação. Gerald em (5:26) explica como você pode especificar o espaço de trabalho usando --folder para diretórios ou dotnet format sln para arquivos de solução. Este comando lista os arquivos com problemas de formatação.
Verificação do nível de erro
Cada processo executado possui um código de saída que indica o seu estado. Gerald executou o seguinte comando para verificar o nível de erro:
echo %errorlevel%
echo %errorlevel%
Gerald demonstra que um código de saída 2 indica que existem erros de formatação que precisam ser corrigidos.

Aplicando e verificando correções
Em seguida, Gerald mostra como aplicar correções de formatação executando o comando novamente, mas sem a flag --check:
dotnet format . -f
dotnet format . -f
Isso formatará automaticamente os arquivos de código com base nas regras definidas no seu arquivo .editorconfig. Gerald verifica o código de saída novamente usando o mesmo comando mencionado acima, para garantir que seja 0, indicando que todos os problemas de formatação foram resolvidos.
Para verificar as alterações, às (8:00), ele usa uma ferramenta gráfica como o GitHub Desktop para revisar os arquivos atualizados. A ferramenta mostra melhorias como correção de espaços em branco, organização de declarações using e outros ajustes de formatação.

Integrando a formatação ao seu fluxo de trabalho
Gerald recomenda incorporar a ferramenta de formatação dotnet ao seu pipeline de CI (Integração Contínua). Essa prática garante que a formatação do código seja aplicada de forma consistente e ajuda a manter altos padrões de qualidade do código. Ao automatizar o processo de formatação, você pode evitar tarefas manuais de formatação e garantir que todo o código esteja em conformidade com as regras de estilo definidas.
Conclusão
Seguindo o passo a passo detalhado de Gerald, você pode facilmente integrar o formato dotnet ao seu processo de desenvolvimento para automatizar a formatação do seu código C# .NET . Quer você trabalhe sozinho ou em equipe, esta ferramenta ajuda a garantir que seu código permaneça limpo, consistente e fácil de ler. Não deixe de conferir o vídeo do Gerald para uma demonstração prática e mais informações sobre a ferramenta de formatação dotnet. Confira também o canal dele no YouTube para obter mais informações sobre código C#.

