언어 및 불필요한 규칙

코드 스타일 언어 규칙은 .NET 프로그래밍 언어의 다양한 구문(예: 한정자 및 괄호)이 사용되는 방식에 영향을 줍니다.

이 범주에는 불필요하고 리팩터링하거나 제거할 수 있는 코드 베이스의 일부를 식별하는 규칙도 포함됩니다. 불필요한 코드가 있다는 것은 다음 문제 중 하나를 나타냅니다.

  • 가독성: 가독성을 불필요하게 저하시키는 코드입니다.
  • 유지 관리: 리팩터링 후 더 이상 사용되지 않고 불필요하게 기본 있는 코드입니다.
  • 성능: 부작용이 없고 불필요한 성능 오버헤드를 초래하는 불필요한 계산입니다.
  • 기능: 필수 코드를 중복하는 코드의 기능 문제입니다. 예를 들어 IDE0060은 메서드가 입력 매개 변수를 실수로 무시하는 경우 사용되지 않는 매개 변수에 플래그를 지정합니다.

언어 규칙은 다음 범주로 분류됩니다.

  • .NET 스타일 규칙: C# 및 Visual Basic 모두에 적용되는 규칙입니다. 이러한 규칙에 대한 옵션 이름은 접두사로 시작합니다 dotnet_style_.
  • C# 스타일 규칙: C# 코드와 관련된 규칙입니다. 이러한 규칙에 대한 옵션 이름은 접두사로 시작합니다 csharp_style_.
  • Visual Basic 스타일 규칙: Visual Basic 코드와 관련된 규칙입니다. 이러한 규칙에 대한 옵션 이름은 접두사로 시작합니다 visual_basic_style_.

옵션 형식

대부분의 언어 규칙에는 기본 스타일을 사용자 지정하는 하나 이상의 연결된 옵션이 있습니다. 예를 들어 간단한 'using' 문 사용(IDE0063)에는 선언 또는 using 문을 선호하는 using 지 여부를 정의할 수 있는 연결된 옵션이 csharp_prefer_simple_using_statement 있습니다. 규칙은 지정된 수준에서 선택한 옵션(예: 경고 또는 오류)을 적용합니다.

언어 규칙에 대한 옵션은 다음 형식의 구성 파일 에서 지정할 수 있습니다.

option_name = value (Visual Studio 2019 이상)

또는

option_name = value:severity

  • 각 언어 규칙에 관해 이 스타일을 선호하는지 여부 또는 시기를 정의하는 값을 지정합니다. 대부분의 규칙은 true(이 스타일 선호) 또는 false(이 스타일 선호 안 함) 값을 허용합니다. 다른 규칙은 when_on_single_line, never 등의 값을 허용합니다.

  • 심각도 (Visual Studio 2019 이상 버전에서 선택 사항)

    규칙의 두 번째 부분은 규칙의 심각도 수준을 지정합니다. .NET 9 이상 버전에서는 심각도가 항상 준수됩니다. 즉, 개발 IDE 내부 및 명령줄 빌드 중입니다. .NET 8 및 이전 버전에서 이 심각도 설정은 빌드 중에가 아니라 Visual Studio와 같은 개발 IDE 내에서만 적용됩니다.

    .NET 8 SDK 또는 이전 버전을 사용하고 빌드 시 심각도를 준수하려는 경우 다음 두 가지 방법 중 하나로 수행할 수 있습니다.

    • <AnalysisLevel> 또는 <AnalysisLevelStyle> 속성을 1 9.0 이상 또는 preview으로 설정합니다.
    • 대신 분석기의 규칙 ID 기반 심각도 구성 구문을 사용하여 심각도를 설정합니다. 구문은 dotnet_diagnostic.<rule ID>.severity = <severity> 형식을 사용합니다(예: dotnet_diagnostic.IDE0040.severity = warning). 자세한 내용은 심각도 수준을 참조하세요.

Visual Studio 2019부터 스타일 위반이 발생한 후 빠른 작업 전구 메뉴에서 코드 스타일 규칙을 구성할 수 있습니다.

규칙 인덱스

언어 및 불필요한 코드 규칙은 식 수준 기본 설정, 코드 블록 기본 설정 및 한정자 기본 설정과 같은 하위 범주로 더 분류됩니다.

using 지시문 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

C# 스타일 규칙:

코드 블록 기본 설정

C# 스타일 규칙:

식 본문 멤버

C# 스타일 규칙:

식 수준 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

C# 스타일 규칙:

Visual Basic 스타일 규칙:

필드 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

언어 키워드(keyword) 및 프레임워크 형식 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

한정자 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

C# 스타일 규칙:

줄 바꿈 기본 설정

  • 여러 개의 빈 줄 허용(IDE2000)
  • 동일한 줄에 포함된 문 허용(IDE2001)
  • 연속 중괄호 사이에 빈 줄 허용(IDE2002)
  • 블록 바로 후 문 허용(IDE2003)
  • 생성자 이니셜라이저에서 콜론 뒤의 빈 줄 허용(IDE2004)
  • 조건식에서 토큰 뒤 빈 줄 허용(IDE2005)
  • 화살표 식에서 토큰 뒤 빈 줄 허용(IDE2006)

Null 검사 기본 설정

C# 스타일 규칙:

매개 변수 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

괄호 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

패턴 일치 기본 설정

C# 스타일 규칙:

표시 안 함 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

This.me. 기본 설정

.NET 스타일 규칙(C# 및 Visual Basic):

var 선호

C# 스타일 규칙:

참고 항목