Partager via


Préférences de style de code et nettoyage du code

Les préférences de style de code vous permettent de contrôler les aspects du code, tels que le style de retrait, la largeur de tabulation, les caractères de fin de ligne, l’encodage et de nombreux autres choix de mise en forme. Vous pouvez définir des paramètres de style de code de deux façons :

Vous pouvez également configurer Visual Studio pour appliquer des préférences de style de code à l’aide des commandes Nettoyage du code et Format de document .

Vous pouvez définir des paramètres de style de code par projet à l’aide d’un fichier EditorConfig ou pour tout le code que vous modifiez dans Visual Studio dans la page Options de l’éditeur de texte .NET ou la page Options C/C++. Pour le code C#, vous pouvez également configurer Visual Studio pour appliquer ces préférences de style de code à l’aide des commandes Nettoyage du code (Visual Studio 2019) et Format de document (Visual Studio 2017).

Pour .NET, les préférences de style de code sont basées sur des analyseurs de plateforme de compilateur .NET (Roslyn). Pour plus d’informations, consultez Analyse du code à l’aide d’analyseurs de plateforme de compilateur .NET (Roslyn).

Dans Visual Studio 2019 version 16.5 et ultérieure, les fichiers de jeu de règles sont déconseillés en faveur des fichiers EditorConfig pour la configuration du style de code pour le code .NET. Pour plus d’informations, consultez Convertir un fichier de jeu de règles existant en fichier EditorConfig.

Styles de code dans les fichiers EditorConfig

Les paramètres de style de code peuvent être spécifiés en ajoutant un fichier EditorConfig à votre projet. Les fichiers EditorConfig sont associés à une base de code plutôt qu’à un compte de personnalisation Visual Studio. Les paramètres d’un fichier EditorConfig sont prioritaires sur les styles de code spécifiés dans la boîte de dialogue options . Utilisez un fichier EditorConfig lorsque vous souhaitez appliquer des styles de codage pour tous les contributeurs à votre dépôt ou projet. Ils sont particulièrement utiles pour garantir la cohérence dans un environnement de programmation d’équipes.

Pour ajouter un fichier EditorConfig, consultez Ajouter et supprimer des fichiers EditorConfig.

Pour obtenir des informations de référence sur les paramètres de style de code .NET, consultez Paramètres de style de code.

Styles de code C/C++ dans la boîte de dialogue Options

Vous pouvez spécifier de nombreuses options de mise en forme de code individuelles, telles que la mise en retrait et les positions d’accolade. Pour ce faire, accédez à Outils>Options>Éditeur de texte>C/C++>Style de code>Mise en forme (ou tapez Ctrl + Q et recherchez « Mise en forme »). Vous pouvez également spécifier l’un des styles ClangFormat (ou votre propre style ClangFormat personnalisé).

Capture d’écran du volet Options avec l’Éditeur de texte.

Vous pouvez spécifier de nombreuses options de mise en forme de code individuelles, telles que la mise en retrait et les positions d’accolade. Pour ce faire, accédez àl’Éditeur> de texteOptions>outils>C/C++>Mise en forme (ou tapez Ctrl + Q et recherchez « Mise en forme »). Vous pouvez également spécifier l’un des styles ClangFormat (ou votre propre style ClangFormat personnalisé).

Pour plus d’informations sur toutes les options de mise en forme, consultez Options, Éditeur de texte, C/C++, Mise en forme.

Styles de code .NET dans la boîte de dialogue Options

Les préférences de style de code peuvent être définies pour tous vos projets C# et Visual Basic en ouvrant la boîte de dialogue Options dans le menu Tools. Dans la boîte de dialogue Options , sélectionnez Éditeur> de texte [C# ou Visual Basic] >Style de code.

  • Pour les styles de mise en forme, sélectionnez les options sous Mise en forme.
  • Pour les préférences de style de code associées aux règles de style de code Quick Actions et IDE, sélectionnez les options sous Général ou Nommage.

Les préférences de style de code peuvent être définies pour tous vos projets C# et Visual Basic en ouvrant la boîte de dialogue Options dans le menu Tools. Dans la boîte de dialogue options , sélectionnez > éditeur de texte [ C# ou de base ] >Style de code>Général.

Chaque élément de la liste affiche un aperçu de la préférence lorsque vous sélectionnez l’option :

Capture d’écran des options de style de code.

Capture d’écran des options de style de code.

Les options définies dans cette fenêtre s’appliquent à votre compte de personnalisation Visual Studio et ne sont pas associées à un projet ou un codebase particulier. En outre, elles ne sont pas appliquées au moment de la compilation, notamment dans les processus d'intégration continue (CI). Si vous souhaitez associer des préférences de style de code à votre projet et que les styles sont appliqués pendant la génération, spécifiez les préférences dans un fichier EditorConfig associé au projet.

Préférence et gravité

Pour chaque paramètre de style de code dans les pages Options Général et Nommage , vous pouvez définir les valeurs de préférence et de gravité à l’aide des listes déroulantes sur chaque ligne. L’option Gravité peut avoir la valeur Refactorisation uniquement, Suggestion, Avertissement ou Erreur.

  • Les préférences de style de code dans les pages Options Général et Nommage déterminent les actions rapides d’un style de code. Les actions rapides ampoule , l’ampoule d’erreur ou l’icône de tournevis s’affichent lorsqu’un style non préféré est utilisé, et vous pouvez choisir une option dans la liste Actions rapides pour réécrire automatiquement le code dans le style préféré.
  • Si vous souhaitez que la violation apparaisse uniquement en tant qu’action rapide et qu’elle soit également exclue du nettoyage du code, définissez la gravité sur Refactorisation uniquement.
  • Si vous souhaitez que la violation apparaisse dans la fenêtre Liste d’erreurs, ainsi que les actions rapides, et qu’elle soit incluse dans le nettoyage du code, définissez la gravité sur Suggestion, Avertissement ou Erreur. Les violations apparaissent sous la forme d’une suggestion (message), d’avertissement ou d’erreur lorsque vous définissez la sortie dans la fenêtre Liste d’erreurs sur Build + IntelliSense. Elles sont exclues de la sortie Build uniquement.

Les paramètres d’un fichier EditorConfig sont prioritaires sur les styles de code définis dans ces pages.

Imposer des styles de code lors de la compilation

À compter de Visual Studio 2019 version 16.8, qui inclut le Kit de développement logiciel (SDK) .NET 5.0 RC2, vous pouvez appliquer les conventions de codage .NET sur la génération pour tous les projets .NET. Au moment de la génération, les violations de style de code .NET s’affichent sous forme d’avertissements ou d’erreurs avec un préfixe « IDE ». Cela vous permet d’appliquer strictement des styles de code cohérents dans votre codebase.

Appliquer des styles de code

Lorsque vous modifiez un style de code dans la page Options ou ajoutez un fichier EditorConfig à votre projet dans Visual Studio, seules les nouvelles lignes de code sont mises en forme en fonction des nouveaux paramètres. La mise en forme du code existant n’est pas modifiée, sauf si vous exécutez l’une des commandes suivantes :

  • Nettoyage du code.

    Sélectionnez Nettoyage de code dans l’éditeur Visual Studio, ou appuyez sur Ctrl+K, Ctrl+E. Cette commande s’applique aux paramètres d’espace blanc, tels que le style de retrait et les paramètres de style de code sélectionnés, tels que les préférences de parenthèses.

  • Mettre en forme le document.

    Sélectionnez Modifier>Avancé>Format de Document, ou appuyez sur Ctrl+K, Ctrl+D dans le profil par défaut. Cette commande s’applique uniquement aux paramètres d’espace blanc, tels que le style de retrait.

Appliquer des styles de code à l’aide du nettoyage du code

Pour appliquer des styles de code à partir d’un fichier EditorConfig ou de la page d’options Style de code, utilisez le bouton Nettoyage du code en bas de l’éditeur (clavier : Ctrl+K, Ctrl+E). Si un fichier EditorConfig existe pour le projet, il s’agit des paramètres qui sont prioritaires.

Conseil

Les règles .NET configurées avec une sévérité de Refactoring Only ne participent pas à l'assainissement du code, mais peuvent être appliquées individuellement via le menu Actions rapides et refactorisations.

Pour appliquer des styles de code :

  1. Tout d’abord, configurez les styles de code que vous souhaitez appliquer (dans l’un des deux profils) dans la boîte de dialogue Configurer le nettoyage du code. Pour ouvrir cette boîte de dialogue, cliquez sur la flèche en regard de l’icône de balai de nettoyage du code, puis choisissez Configurer le nettoyage du code. Vous pouvez également utiliser le menu Analyser>/Nettoyage du code.

    Capture d’écran de Configurer le nettoyage du code.

    Pour obtenir une correspondance des correcteurs de nettoyage de code .NET aux règles de style de code .NET, consultez les paramètres de nettoyage du code .NET.

    Les options C/C++ incluent C++ dans le nom du fixateur.

  2. Une fois que vous avez configuré le nettoyage du code, utilisez l’une des méthodes suivantes pour exécuter le nettoyage du code :

    • Cliquez sur l’icône de balai ou appuyez sur Ctrl+K, Ctrl+E.

      Capture d’écran du nettoyage du code d’exécution.

    • Pour exécuter le nettoyage du code dans l’ensemble de votre projet ou solution, cliquez avec le bouton droit sur le nom du projet ou de la solution dans l’Explorateur de solutions, sélectionnez Analyser et nettoyer le code, puis sélectionnez Exécuter le nettoyage du code.

      Capture d’écran de l’exécution du nettoyage du code sur l’ensemble du projet ou de la solution.

  3. (Facultatif) Si vous souhaitez que vos paramètres de style de code soient appliqués chaque fois que vous enregistrez un fichier, accédez à Options>Text Editor>Code Cleanup et sélectionnez Exécuter le profil De nettoyage du code lors de l’enregistrement.

Pour les fichiers de code C#, Visual Studio dispose d’un bouton Nettoyage du code en bas de l’éditeur (clavier : Ctrl+K, Ctrl+E) pour appliquer des styles de code à partir d’un fichier EditorConfig ou à partir de la page d’options style de code. Si un fichier EditorConfig existe pour le projet, il s’agit des paramètres qui sont prioritaires.

Conseil

Les règles configurées avec la gravité Aucune ne participent pas au nettoyage du code. Toutefois, elles peuvent être appliquées individuellement via le menu Actions rapides et refactorisations.

Pour appliquer des styles de code :

  1. Tout d’abord, configurez les styles de code que vous souhaitez appliquer (dans l’un des deux profils) dans la boîte de dialogue Configurer le nettoyage du code. Pour ouvrir cette boîte de dialogue, cliquez sur la flèche en regard de l’icône de balai de nettoyage du code, puis choisissez Configurer le nettoyage du code.

    Capture d’écran de Configurer le nettoyage du code.

  2. Une fois que vous avez configuré le nettoyage du code, utilisez l’une des méthodes suivantes pour exécuter le nettoyage du code :

    • Cliquez sur l’icône de balai ou appuyez sur Ctrl+K, Ctrl+E pour exécuter le nettoyage du code.

      Capture d’écran du nettoyage du code d’exécution.

    • Pour exécuter le nettoyage du code dans l’ensemble de votre projet ou solution, cliquez avec le bouton droit sur le nom du projet ou de la solution dans Explorateur de solutions, sélectionnez Analyser et nettoyer le code, puis sélectionnez Exécuter le nettoyage du code.

      Capture d’écran de l’exécution du nettoyage du code sur l’ensemble du projet ou de la solution.

    Si vous souhaitez que vos paramètres de style de code soient appliqués chaque fois que vous enregistrez un fichier, vous pouvez aimer le nettoyage de code lors de l’extension Enregistrer.

Paramètres de nettoyage du code .NET

La plupart des paramètres de nettoyage du code correspondent à un ou plusieurs styles de code .NET pris en charge dans EditorConfig. Pour obtenir des exemples montrant les effets des paramètres, utilisez les liens du tableau suivant.

Réglage Id de règle ou option de style
Supprimer les importations ou les utilisations inutiles IDE0005
Trier les importations ou les utilisations dotnet_sort_system_directives_first
dotnet_separate_import_directive_groups
Appliquer les préférences d’en-tête de fichier modèle_entête_fichier
Supprimer les variables inutilisées CS0219
Appliquer les préférences de création d’objet visual_basic_style_prefer_simplified_object_creation
Appliquer les préférences IsNot visual_basic_style_prefer_isnot_expression
Ajouter la qualification « this » ou « Me » IDE0003-IDE0009
Ajouter des modificateurs d’accessibilité dotnet_style_require_accessibility_modifiers
Ordonner les modificateurs IDE0036
Rendre le champ readonly dotnet_style_readonly_field
Supprimer les casts inutiles IDE0004
Appliquer des paramètres d’initialisation d’objet/collection) dotnet_style_object_initializer
Appliquer en utilisant les préférences de placement des directives csharp_using_directive_placement
Appliquer les préférences de parenthèses IDE0047-IDE0048
Appliquer les préférences de valeur inutilisées IDE0058
Appliquer les préférences de type de langage/framework IDE0049
Supprimer les suppressions inutilisées dotnet_remove_unnecessary_suppression_exclusions
Appliquer des préférences d’expression booléenne simplifiée dotnet_style_prefer_simplified_boolean_expressions
Appliquer les préférences d’interpolation de chaîne dotnet_style_prefer_simplified_interpolation
Supprimer les paramètres inutilisés dotnet_code_quality_unused_parameters
Appliquer les préférences de propriété automatique dotnet_style_prefer_auto_properties
Appliquer les préférences d’affectation composée dotnet_style_prefer_compound_assignment
Appliquer les préférences d’expression coalesce dotnet_style_coalesce_expression
Appliquer les préférences d’expression conditionnelle dotnet_style_prefer_conditional_expression_over_assignment
dotnet_style_prefer_conditional_expression_over_return
Appliquer les préférences de nom de tuple dotnet_style_explicit_tuple_names
dotnet_style_prefer_inferred_tuple_names
Appliquer les préférences inférées de noms de membres de type anonyme dotnet_style_prefer_inferred_anonymous_type_member_names
Appliquer les préférences en matière de contrôle de null dotnet_style_prefer_is_null_check_over_reference_equality_method
Appliquer les préférences de propagation de null dotnet_style_null_propagation
Appliquer les préférences ' var' IDE0007-IDE0008
Ajout des accolades nécessaires pour les instructions de contrôle sur une seule ligne csharp_prefer_braces
Appliquer les préférences de corps pour l’expression/le bloc Membres expression-bodied
Appliquer les préférences de variables ‘out’ inline csharp_style_inlined_variable_declaration
Appliquer des préférences de correspondance de modèle Préférences de filtrage par motif
Appliquer les préférences d’appel de délégué conditionnel csharp_style_conditional_delegate_call
Appliquer les préférences de fonction locale statique csharp_prefer_static_local_function
Appliquer les préférences de déconstruction csharp_style_deconstructed_variable_declaration
Appliquer les préférences par défaut(T) csharp_prefer_simple_default_expression
Appliquer les préférences de new() csharp_style_implicit_object_creation_when_type_is_apparent
Appliquer les préférences de plage csharp_style_prefer_range_operator
Appliquer les préférences de fonction locales plutôt qu’anonymes csharp_style_pattern_local_over_anonymous_function
Appliquer des préférences nulles aux paramètres Préférences de vérification de valeur null
Appliquer les préférences d’instruction using csharp_prefer_simple_using_statement
Appliquer les préférences d’expression throw csharp_style_throw_expression