Formatage programmatique du code avec DotNet Format
Dans cet article, nous allons parcourir le processus de formatage de votre code C# .NET de manière programmatique à l'aide de l'outil de formatage dotnet. Ce guide est basé sur le tutoriel vidéo de Gerald Versluis sur "Formate Your C# .NET Code Automatically with DotNet Format", où il démontre comment utiliser efficacement l'outil pour s'assurer que votre code respecte des normes de formatage cohérentes. Je fournirai des horodatages et des explications détaillées sur ce que Gerald a fait dans la vidéo pour vous aider à suivre et à appliquer ces techniques à vos projets.
Introduction au format DotNet
À (0:36), Gerald présente le format dotnet comme un outil conçu pour formater le code C# en fonction des règles définies dans un fichier .editorconfig. Ce fichier est essentiel pour assurer la cohérence des styles de codage dans l'ensemble du projet. Elle veille à ce que tous les codes respectent les mêmes directives de formatage, qui peuvent inclure :
- <Style d'indentation : Utilisation de tabulations ou d'espaces.
- Règles d'espacement : La quantité d'espace autour des opérateurs, des accolades, etc.
- Structure du code : comment les constructions à une ou plusieurs lignes sont formatées.
En appliquant ces règles, le format dotnet contribue à maintenir une base de code uniforme, ce qui en facilite la lecture et la gestion.
Comprendre le fichier .editorconfig
Le fichier .editorconfig, comme l'explique Gerald à (0:48), spécifie diverses préférences de style de codage. Ce fichier est très flexible et vous permet de définir un large éventail de règles de formatage, y compris :
- <Préférences d'indentation : Détermine si les tabulations ou les espaces sont utilisés pour l'indentation et combien d'espaces sont utilisés.
- Directives d'espacement : Contrôle l'espacement autour des éléments de code tels que les opérateurs, les accolades et les mots-clés.
- Autres règles de formatage : Définit des règles de style supplémentaires pour assurer la cohérence du code.
Le fichier .editorconfig sert de point central de configuration pour le formatage du code dans différents éditeurs et IDE.
Aperçu de l'outil DotNet Format
Gerald explique que le format dotnet est un outil global pour le runtime .NET (1:13). Le fait qu'il s'agisse d'un outil global signifie qu'il peut être installé une seule fois et utilisé dans le cadre de divers projets .NET sur votre système. Cela permet un formatage cohérent du code sans qu'il soit nécessaire de procéder à des installations ou à des configurations distinctes pour chaque projet.
Vous pouvez accéder au dépôt du format dotnet sur GitHub à (1:26). Ce référentiel fournit le code source, la documentation et des informations complémentaires sur l'outil, afin d'aider les utilisateurs à comprendre ses fonctionnalités et à se tenir au courant des dernières versions.
Utilisation de base du format DotNet
À (2:09), Gerald montre la commande de base pour utiliser le format dotnet :
dotnet format <options> <workspace>
dotnet format <options> <workspace>
Qu'est-ce qu'un espace de travail ?
Dans le contexte du format dotnet, le terme "espace de travail" fait référence à l'étendue du code qui sera formaté. Il peut s'agir de :
- Un fichier de solution : le fichier .sln qui englobe plusieurs projets.
- Un fichier de projet : Un fichier .csproj individuel contenant des fichiers de code spécifiques.
- Un dossier : Un répertoire qui contient plusieurs fichiers de code, y compris des fichiers .cs et potentiellement .vb.
La possibilité de spécifier différents types d'espaces de travail vous permet d'appliquer la mise en forme à différents niveaux de votre projet.
Caractéristiques et options
Gerald met en évidence plusieurs caractéristiques et options clés du format dotnet à (2:27) :
- Réparation automatique : l'outil peut corriger automatiquement les problèmes de formatage en fonction des règles définies dans votre fichier .editorconfig. Cette fonction est utile pour maintenir un style de code cohérent dans l'ensemble de votre projet sans intervention manuelle.
- Vérifier uniquement : si vous préférez examiner les problèmes de mise en forme sans apporter de modifications, vous pouvez utiliser l'outil pour vérifier uniquement les problèmes. Cette fonctionnalité est particulièrement utile dans les pipelines d'intégration continue (CI).
Options avancées et personnalisation
Gerald explore les options avancées et la personnalisation. Il mentionne :
- Niveau de gravité : Permet de spécifier les niveaux de gravité des problèmes qui doivent être corrigés. Cela permet de cibler des types spécifiques de problèmes de formatage.
- Inclusion/Exclusion de fichiers : vous pouvez contrôler quels fichiers sont inclus ou exclus du formatage. Ceci est utile pour se concentrer sur des parties particulières de votre base de code.
- Vérifier uniquement avec le code de sortie : En utilisant l'option de vérification, vous pouvez vérifier s'il y a des problèmes de formatage sans appliquer de correctifs. Le code de sortie indiquera si des problèmes ont été trouvés.
- Rapport JSON : Génère un rapport détaillé au format JSON, donnant un aperçu de l'état de la mise en forme de votre code.
- Verbosité : Définissez le niveau de verbosité pour contrôler la quantité de résultats générés.
- <Version de l'outil : Vérifiez la version du format dotnet pour garantir la compatibilité avec votre projet et rester informé des nouvelles fonctionnalités.
Installation de l'outil Dotnet Format
Gerald commence par expliquer le processus d'installation de l'outil de formatage dotnet, indispensable pour formater par programme le code C#. Il montre comment le configurer en tant qu'outil global à l'aide de la commande suivante :
dotnet tool install -g dotnet-format
dotnet tool install -g dotnet-format
Cette commande garantit que le format dotnet est disponible dans le monde entier, permettant un accès facile à partir de n'importe quelle invite de commande ou de n'importe quel terminal. Gerald met l'accent sur la nécessité du runtime .NET Core, qui doit être installé si vous avez travaillé avec .NET récemment.

Pour confirmer que l'installation a réussi, à (4:00), Gerald exécute :
dotnet format /?
dotnet format /?
Cette commande affiche la liste des options et commandes disponibles, vérifiant que le format dotnet est correctement installé et prêt à l'emploi.

À (4:11), Gerald note que certaines options, telles que --dry-run, sont obsolètes et conseille d'utiliser les pratiques les plus récentes pour le formatage du code.
Application des corrections de formatage de code
Vérification des problèmes de formatage
En utilisant la base de code Xamarin Community Toolkit comme exemple pratique, Gerald vérifie d'abord les problèmes de formatage sans appliquer de modifications. Il court :
dotnet format . -f --check
dotnet format . -f --check
pour identifier les fichiers qui ont besoin d'être formatés. Gerald (5:26) explique comment vous pouvez spécifier l'espace de travail en utilisant --folder pour les répertoires ou le format dotnet sln pour les fichiers de solution. Cette commande répertorie les fichiers présentant des problèmes de formatage.
Vérification du niveau d'erreur
Chaque processus qui s'exécute possède un code de sortie indiquant son état. Gerald a exécuté la commande suivante pour vérifier le niveau d'erreur :
echo %errorlevel%
echo %errorlevel%
Gerald démontre qu'un code de sortie de 2 indique qu'il y a des erreurs de formatage qui doivent être corrigées.

Application et vérification des corrections
Gerald montre ensuite comment appliquer les corrections de formatage en exécutant à nouveau la commande, mais sans l'option --check :
dotnet format . -f
dotnet format . -f
Cela formatera automatiquement les fichiers de code en fonction des règles définies dans votre fichier .editorconfig. Gerald vérifie à nouveau le code de sortie à l'aide de la même commande que celle mentionnée ci-dessus, pour s'assurer qu'il est égal à 0, ce qui indique que tous les problèmes de formatage ont été résolus.
Pour vérifier les modifications, à (8:00), il utilise un outil graphique comme GitHub Desktop pour examiner les fichiers mis à jour. L'outil présente des améliorations telles que la correction des espaces blancs, l'organisation des instructions d'utilisation et d'autres ajustements de formatage.

Intégrer le formatage dans votre flux de travail
Gerald recommande d'incorporer l'outil de formatage dotnet dans votre pipeline de construction CI. Cette pratique garantit que le formatage du code est appliqué de manière cohérente et contribue à maintenir des normes de code de haute qualité. En automatisant le processus de formatage, vous pouvez éviter les tâches de formatage manuel et vous assurer que tout le code respecte les règles de style définies.
Conclusion
En suivant la marche à suivre détaillée de Gerald, vous pouvez facilement intégrer le format dotnet dans votre processus de développement pour automatiser la mise en forme de votre code C# .NET. Que vous travailliez seul ou en équipe, cet outil vous permet de vous assurer que votre code reste propre, cohérent et facile à lire. Ne manquez pas de regarder la vidéo de Gerald pour une démonstration pratique et d'autres informations sur l'outil de formatage dotnet. Consultez également sa Chaîne YouTube pour en savoir plus sur le code C#.

