Język i niepotrzebne reguły

Reguły języka w stylu kodu wpływają na sposób użycia różnych konstrukcji języków programowania .NET, na przykład modyfikatorów i nawiasów.

Ta kategoria zawiera również reguły identyfikujące części bazy kodu, które są niepotrzebne i mogą być refaktoryzowane lub usuwane. Obecność niepotrzebnego kodu wskazuje jeden z następujących problemów:

  • Czytelność: kod, który niepotrzebnie obniża czytelność.
  • Łatwość konserwacji: kod, który nie jest już używany po refaktoryzacji i jest niepotrzebnie utrzymywany.
  • Wydajność: Niepotrzebne obliczenia, które nie mają skutków ubocznych i prowadzą do niepotrzebnych obciążeń związanych z wydajnością.
  • Funkcjonalność: problem funkcjonalny w kodzie, który sprawia, że wymagany kod jest nadmiarowy. Na przykład IDE0060 flaguje nieużywane parametry, w których metoda przypadkowo ignoruje parametr wejściowy.

Reguły języka należą do następujących kategorii:

  • Reguły stylu platformy .NET: reguły dotyczące języków C# i Visual Basic. Nazwy opcji dla tych reguł zaczynają się od prefiksu dotnet_style_.
  • Reguły stylu języka C#: reguły specyficzne dla kodu C#. Nazwy opcji dla tych reguł zaczynają się od prefiksu csharp_style_.
  • Reguły stylu języka Visual Basic: reguły specyficzne dla kodu Języka Visual Basic. Nazwy opcji dla tych reguł zaczynają się od prefiksu visual_basic_style_.

Format opcji

Wiele reguł języka ma co najmniej jedną skojarzną opcję dostosowywania preferowanego stylu. Na przykład użyj prostej instrukcji "using" (IDE0063) ma skojarzona opcja csharp_prefer_simple_using_statement , która umożliwia określenie, czy wolisz deklarację using , czy instrukcję using . Reguła wymusza wybrane opcje na określonym poziomie, na przykład ostrzeżenie lub błąd.

Opcje reguł języka można określić w pliku konfiguracji o następującym formacie:

option_name = value (Visual Studio 2019 i nowsze)

lub

option_name = value:severity

  • Wartość

    Dla każdej reguły języka należy określić wartość, która określa, czy lub kiedy wolisz styl. Wiele reguł akceptuje wartość true (preferuj ten styl) lub false (nie preferuj tego stylu). Inne reguły akceptują wartości, takie jak when_on_single_line lub never.

  • Ważność (opcjonalnie w programie Visual Studio 2019 i nowszych wersjach)

    Druga część reguły określa poziom ważności reguły. W wersjach .NET 9 i nowszych ważność jest zawsze przestrzegana — czyli wewnątrz środowisk IDE programowania i podczas kompilacji wiersza polecenia. W programie .NET 8 i starszych wersjach to ustawienie ważności jest przestrzegane tylko w środowiskach IDE programowania, takich jak Visual Studio, a nie podczas kompilacji.

    Jeśli używasz zestawu .NET 8 SDK lub starszej wersji i chcesz, aby ważność była przestrzegana w czasie kompilacji, możesz to zrobić na jeden z dwóch sposobów:

    • Ustaw właściwość <9.0 AnalysisLevel> na <AnalysisLevelStyle> lub wyższą lub na preview.
    • Ustaw ważność przy użyciu składni konfiguracji ważności opartej na identyfikatorze reguły dla analizatorów. Składnia przyjmuje postać dotnet_diagnostic.<rule ID>.severity = <severity>, na przykład dotnet_diagnostic.IDE0040.severity = warning. Aby uzyskać więcej informacji, zobacz poziom ważności.

Napiwek

Począwszy od programu Visual Studio 2019, można skonfigurować reguły stylu kodu z menu żarówki Szybkie akcje po wystąpieniu naruszenia stylu.

Indeks reguły

Język i niepotrzebne reguły kodu są dodatkowo podzielone na podkategorie, takie jak preferencje na poziomie wyrażenia, preferencje bloku kodu i preferencje modyfikatora.

using preferencje dyrektywy

Reguły stylu platformy .NET (C# i Visual Basic):

Reguły stylu języka C#:

Preferencje bloku kodu

Reguły stylu języka C#:

Składowe z wyrażeniem w treści

Reguły stylu języka C#:

Preferencje na poziomie wyrażeń

Reguły stylu platformy .NET (C# i Visual Basic):

Reguły stylu języka C#:

Reguły stylu języka Visual Basic:

Preferencje pól

Reguły stylu platformy .NET (C# i Visual Basic):

Preferencje dotyczące słów kluczowych języka a typów struktur

Reguły stylu platformy .NET (C# i Visual Basic):

Preferencje dotyczące modyfikatorów

Reguły stylu platformy .NET (C# i Visual Basic):

Reguły stylu języka C#:

Preferencje nowego wiersza

  • Zezwalaj na wiele pustych wierszy (IDE2000)
  • Zezwalaj na instrukcje osadzone w tym samym wierszu (IDE2001)
  • Zezwalaj na puste wiersze między kolejnymi nawiasami klamrowymi (IDE2002)
  • Zezwalaj na instrukcję natychmiast po bloku (IDE2003)
  • Zezwalaj na puste wiersze po dwukropku w inicjatorze konstruktora (IDE2004)
  • Zezwalaj na pusty wiersz po tokenie w wyrażeniu warunkowym (IDE2005)
  • Zezwalaj na pusty wiersz po tokenie w wyrażeniu strzałki (IDE2006)

Preferencje dotyczące sprawdzania wartości null

Reguły stylu języka C#:

Preferencje dotyczące parametrów

Reguły stylu platformy .NET (C# i Visual Basic):

Preferencje dotyczące nawiasów

Reguły stylu platformy .NET (C# i Visual Basic):

Preferencje dopasowywania wzorców

Reguły stylu języka C#:

Preferencje pomijania

Reguły stylu platformy .NET (C# i Visual Basic):

This. i me. preferencje

Reguły stylu platformy .NET (C# i Visual Basic):

var Preferencje

Reguły stylu języka C#:

Zobacz też