코드 스타일 기본 설정을 사용하면 들여쓰기 스타일, 탭 너비, 줄 끝 문자, 인코딩 및 기타 다양한 서식 선택과 같은 코드 측면을 제어할 수 있습니다. 다음 두 가지 방법으로 코드 스타일 설정을 정의할 수 있습니다.
- EditorConfig 파일을 사용하여 코드베이스별 또는 프로젝트별로 설정하거나
- 텍스트 편집기 .NET 옵션 페이지 또는 C/C++ 옵션 페이지의 설정을 기반으로 Visual Studio에서 편집하는 모든 코드의 경우
코드 정리 및 문서 서식 명령을 사용하여 코드 스타일 기본 설정을 적용하도록 Visual Studio를 구성할 수도 있습니다.
EditorConfig 파일을 사용하거나 텍스트 편집기 .NET 옵션 페이지 또는 C/C++ 옵션 페이지의 Visual Studio에서 편집하는 모든 코드에 대해 프로젝트당 코드 스타일 설정을 정의할 수 있습니다. C# 코드의 경우 코드 정리(Visual Studio 2019) 및 문서 서식(Visual Studio 2017) 명령을 사용하여 이러한 코드 스타일 기본 설정을 적용하도록 Visual Studio를 구성할 수도 있습니다.
EditorConfig 파일의 코드 스타일
프로젝트에 EditorConfig 파일을 추가하여 코드 스타일 설정을 지정할 수 있습니다. EditorConfig 파일은 Visual Studio 개인 설정 계정이 아닌 코드베이스와 연결됩니다. EditorConfig 파일의 설정은 옵션 대화 상자에 지정된 코드 스타일보다 우선합니다. 리포지토리 또는 프로젝트에 대한 모든 참가자에 대한 코딩 스타일을 적용하려면 EditorConfig 파일을 사용합니다. 특히 팀 프로그래밍 환경에서 일관성을 유지하는 데 유용합니다.
EditorConfig 파일을 추가하려면 EditorConfig 파일 추가 및 제거를 참조하세요.
.NET 코드 스타일 설정에 대한 참조 정보는 코드 스타일 설정을 참조하세요.
옵션 대화 상자의 C/C++ 코드 스타일
들여쓰기 및 중괄호 위치와 같은 여러 개별 코드 서식 옵션을 지정할 수 있습니다. 이렇게 하려면 도구>옵션>텍스트 편집기>C/C++>코드 스타일>서식 으로 이동하거나 Ctrl + Q 를 입력하고 "서식"을 검색합니다. 또는 ClangFormat 스타일(또는 사용자 지정 ClangFormat 스타일) 중 하나를 지정할 수 있습니다.
들여쓰기 및 중괄호 위치와 같은 여러 개별 코드 서식 옵션을 지정할 수 있습니다. 이렇게 하려면 도구>옵션>텍스트 편집기>C/C++>서식 으로 이동하거나 Ctrl + Q 를 입력하고 "서식"을 검색합니다. 또는 ClangFormat 스타일(또는 사용자 지정 ClangFormat 스타일) 중 하나를 지정할 수 있습니다.
모든 서식 옵션에 대한 자세한 내용은 옵션, 텍스트 편집기, C/C++, 서식을 참조하세요.
옵션 대화 상자의 .NET 코드 스타일
도구 메뉴에서 옵션 대화 상자를 열어 모든 C# 및 Visual Basic 프로젝트에 대한 코드 스타일 기본 설정을 지정할 수 있습니다. 옵션 대화 상자에서 텍스트 편집기> [C# 또는 Visual Basic] >코드 스타일을 선택합니다.
- 서식 스타일을 지정하려면 서식 아래에서 옵션을 선택합니다.
- 빠른 작업 및 IDE 코드 스타일 규칙과 연결된 코드 스타일 기본 설정의 경우 일반 또는 명명에서 옵션을 선택합니다.
도구 메뉴에서 옵션 대화 상자를 열어 모든 C# 및 Visual Basic 프로젝트에 대한 코드 스타일 기본 설정을 지정할 수 있습니다. 옵션 대화 상자에서 텍스트 편집기> [C# 또는 기본] >코드 스타일>일반선택합니다.
옵션을 선택하면 목록의 각 항목에 기본 설정 미리 보기가 표시됩니다.
이 창에 설정된 옵션은 Visual Studio 개인 설정 계정에 적용할 수 있으며 특정 프로젝트 또는 코드베이스와 연결되지 않습니다. 또한 CI(연속 통합) 빌드를 포함하여 빌드 시 적용되지 않습니다. 코드 스타일 기본 설정을 프로젝트와 연결하고 빌드 중에 스타일을 적용하려면 프로젝트와 연결된 EditorConfig 파일 에서 기본 설정을 지정합니다.
기본 설정 및 심각도
일반 및 명명 옵션 페이지의 각 코드 스타일 설정에 대해 각 줄의 드롭다운을 사용하여 기본 설정 및 심각도 값을 설정할 수 있습니다. 심각도는 리팩터링 전용, 제안, 경고또는 오류로 설정할 수 있습니다.
-
일반 및 명명 옵션 페이지의 코드 스타일 기본 설정은 코드 스타일의 빠른 작업을 결정합니다.
빠른 작업 전구
, 오류 전구
또는 드라이버
아이콘은 기본 설정이 아닌 스타일을 사용할 때 표시되며 빠른 작업 목록에서 옵션을 선택하여 코드를 기본 설정 스타일로 자동으로 다시 작성할 수 있습니다.
- 위반이 빠른 작업으로만 표시되고 코드 정리에서 제외되도록 하려면 심각도 를 리팩터링 전용으로 설정합니다.
- 위반이 빠른 작업과 함께 오류 목록 창에 표시되고 코드 정리에 포함되도록 하려면 심각도 를 제안, 경고 또는 오류로 설정합니다. 오류 목록 창의 출력을 빌드 + IntelliSense로 설정할 때 위반이 제안(메시지), 경고 또는 오류로 표시됩니다. 빌드 전용 출력에서 제외됩니다.
EditorConfig 파일의 설정이 이러한 페이지에 설정된 코드 스타일보다 우선합니다.
빌드에서 코드 스타일 적용
.NET 5.0 RC2 SDK를 포함하는 Visual Studio 2019 버전 16.8부터 모든 .NET 프로젝트에 대한 빌드 .NET 코딩 규칙을 적용할 있습니다. 빌드 시 .NET 코드 스타일 위반은 "IDE" 접두사를 사용하여 경고 또는 오류로 표시됩니다. 이렇게 하면 코드베이스에서 일관된 코드 스타일을 엄격하게 적용할 수 있습니다.
코드 스타일 적용
옵션 페이지에서 코드 스타일을 변경하거나 Visual Studio의 프로젝트에 EditorConfig 파일을 추가하면 새 코드 줄만 새 설정에 따라 서식이 지정됩니다. 다음 명령 중 하나를 실행하지 않는 한 기존 코드의 서식은 변경되지 않습니다.
-
Visual Studio 편집기에서 코드 정리를 선택하거나 Ctrl+, Ctrl+E를 누릅니다. 이 명령은 들여쓰기 스타일과 같은 공백 설정 및 선택한 코드 스타일 설정(예: 괄호 기본 설정)에 적용됩니다.
문서 서식을 지정합니다.
고급>서식 문서>을 선택하거나 기본 프로필에서 Ctrl+K, Ctrl+D를 누릅니다. 이 명령은 들여쓰기 스타일과 같은 공백 설정에만 적용됩니다.
코드 정리를 사용하여 코드 스타일 적용
EditorConfig 파일 또는 코드 스타일 옵션 페이지에서 코드 스타일을 적용하려면 편집기 아래쪽의 코드 정리 단추(키보드: Ctrl+, Ctrl+E)를 사용합니다. 프로젝트에 대한 EditorConfig 파일이 있는 경우 우선하는 설정입니다.
팁
Refactoring Only로 설정된 .NET 규칙은 코드 정리에 참여하지 않지만 빠른 작업 및 리팩터링 메뉴를 통해 개별적으로 적용할 수 있습니다.
코드 스타일을 적용하려면 다음을 수행합니다.
먼저 코드 정리 구성 대화 상자에서 적용할 코드 스타일을 두 가지 프로필 중 하나로 설정합니다. 이 대화 상자를 열려면 코드 정리 빗자루 아이콘 옆에 있는 확장기 화살표를 클릭한 다음 코드 정리구성을 선택합니다. 또는코드 정리> 메뉴를 사용합니다.
.NET 코드 정리 해결 프로그램을 .NET 코드 스타일 규칙에 매핑하려면 .NET 코드 정리 설정을 참조하세요.
C/C++ 옵션에는 수리 도구의 이름에 C++이 포함됩니다.
코드 정리를 구성한 후 다음 방법 중 하나를 사용하여 코드 정리를 실행합니다.
빗자루 아이콘을 클릭하거나 Ctrl +ctrl 누릅니다.
전체 프로젝트 또는 솔루션에서 코드 정리를 실행하려면 솔루션 탐색기에서 프로젝트 또는 솔루션 이름을 마우스 오른쪽 단추로 클릭하고 분석 및 코드 정리를 선택한 다음 코드 정리 실행을 선택합니다.
(선택 사항) 파일을 저장할 때마다 코드 스타일 설정을 적용하려면 옵션>텍스트 편집기>코드 정리 로 이동하여 저장 시 코드 정리 프로필 실행을 선택합니다.
C# 코드 파일의 경우 Visual Studio에는 편집기 아래쪽에 코드 정리 단추가 있습니다(키보드: Ctrl+K, Ctrl+E) EditorConfig 파일 또는 코드 스타일 옵션 페이지에서 코드 스타일을 적용합니다. 프로젝트에 대한 EditorConfig 파일이 있는 경우 우선하는 설정입니다.
팁
없음 심각도로 구성된 규칙은 코드 정리에 참여하지 않지만 빠른 작업 및 리팩터링 메뉴를 통해 개별적으로 적용할 수 있습니다.
코드 스타일을 적용하려면 다음을 수행합니다.
먼저 코드 정리 구성 대화 상자에서 적용할 코드 스타일을 두 가지 프로필 중 하나로 설정합니다. 이 대화 상자를 열려면 코드 정리 빗자루 아이콘 옆에 있는 확장기 화살표를 클릭한 다음 코드 정리구성을 선택합니다.
코드 정리를 구성한 후 다음 방법 중 하나를 사용하여 코드 정리를 실행합니다.
빗자루 아이콘을 클릭하거나 Ctrl +키를 Ctrl+E 눌러 코드 정리를 실행합니다.
전체 프로젝트 또는 솔루션에서 코드 정리를 실행하려면 솔루션 탐색기프로젝트 또는 솔루션 이름을 마우스 오른쪽 단추로 클릭하고 분석 및 코드 정리선택한 다음, 코드 정리 실행을 선택합니다.
파일을 저장할 때마다 코드 스타일 설정을 적용하려면 저장 확장에서 코드 정리를 좋아할 수 있습니다.
.NET 코드 정리 설정
대부분의 코드 정리 설정은 EditorConfig에서 지원되는 하나 이상의 .NET 코드 스타일에 매핑됩니다. 설정의 효과를 보여 주는 예제는 다음 표의 링크를 사용합니다.
설정 | 규칙 ID 또는 스타일 옵션 |
---|---|
불필요한 가져오기 또는 사용 제거 | IDE0005 |
가져오기문 또는 using문 정렬 |
dotnet_sort_system_directives_firstdotnet_separate_import_directive_groups |
파일 헤더 기본 설정 적용 | 파일_헤더_템플릿 |
사용되지 않는 변수 제거 | CS0219 |
개체 만들기 기본 설정 적용 | visual_basic_style_prefer_simplified_object_creation |
IsNot 기본 설정 적용 | 비주얼_베이직_스타일_선호_이다_표현 |
'this' 또는 'Me' 자격 추가 | IDE0003-IDE0009 |
접근성 한정자 추가 | dotnet_style_require_accessibility_modifiers는 프로그래밍에서 접근성 수정자를 요구하는 스타일입니다. |
주문 수정자 | IDE0036 |
필드를 읽기 전용으로 만들기 | dotnet_style_readonly_field (읽기 전용 필드 스타일) |
불필요한 캐스트 제거 | IDE0004 |
개체/컬렉션 초기화 매개 변수 적용) | dotnet_style_object_initializer (닷넷 스타일 객체 이니셜라이저) |
지시문 배치 기본 설정을 사용하여 적용 | csharp 사용 지시문 배치 |
괄호 기본 설정 적용 | IDE0047-IDE0048 |
사용하지 않는 값 기본 설정 적용 | IDE0058 |
언어/프레임워크 형식 기본 설정 적용 | IDE0049 |
사용하지 않는 억제 제거 | dotnet_remove_unnecessary_suppression_exclusions |
부울 식 기본 설정 간소화 적용 | dotnet_style_prefer_simplified_boolean_expressions (간단한 논리 표현식을 선호하도록 설정) |
문자열 보간 선호도 적용 | dotnet_style_prefer_simplified_interpolation |
사용되지 않는 매개 변수 제거 | dotnet_code_quality_unused_parameters (사용되지 않는 매개변수) |
자동 속성 선호 설정 적용 | dotnet_style_prefer_auto_properties 속성을 자동으로 선호하는 스타일 |
복합 할당 기본 설정 적용 | dotnet_style_prefer_compound_assignment (복합 할당을 선호하는 스타일 설정) |
병합 수식 선호도 적용 | 닷넷_스타일_코얼레스크_표현식 |
조건식 선호 설정 적용 |
dotnet_style_prefer_conditional_expression_over_assignmentdotnet_style_prefer_conditional_expression_over_return |
튜플 이름 기본 설정 적용 |
dotnet_style_explicit_tuple_namesdotnet_style_prefer_inferred_tuple_names |
유추된 익명 형식 멤버 이름 기본 설정 적용 | dotnet_style_prefer_inferred_anonymous_type_member_names 설정은 익명 형식 멤버 이름을 추론하도록 선호합니다. |
Null 검사 기본 설정 적용 | dotnet_style_prefer_is_null_check_over_reference_equality_method (참고: 이 코딩 스타일 규칙은 null 확인을 참조 동등성 메서드 이상의 선호를 나타냅니다) |
null 전파 선호 설정 적용 | dotnet_style_null_propagation |
'var' 기본 설정 적용 | IDE0007 IDE0008 |
한 줄짜리 제어문에 필요한 중괄호를 추가합니다. | csharp_prefer_braces 설정은 C# 코드에서 중괄호 사용을 선호하는 옵션입니다. |
식/블록 본문 기본 설정 적용 | 수식 본문 멤버 |
인라인 'out' 변수 기본 설정 적용 | csharp 스타일 내재된 변수 선언 |
패턴 일치 기본 설정 적용 | 패턴 일치 기본 설정 |
조건부 대리자 호출 기본 설정 적용 | csharp 스타일 조건부 대리자 호출 |
정적 로컬 함수 기본 설정 적용 | csharp_정적 지역 함수 선호 |
분해 환경 설정 적용 | csharp_style_deconstructed_variable_declaration (C# 스타일의 분해된 변수 선언) |
기본값(T) 설정 적용 | csharp_단순한_기본_표현_선호 |
new() 기본 설정 적용 | csharp_스타일_암시적_객체_생성_유형_명확시 |
범위 기본 설정 적용 | C# 스타일 범위 연산자 선호 |
익명 함수 기본 설정보다 로컬 적용 | csharp 스타일 패턴 지역 변수 vs 익명 함수 |
매개 변수 null 기본 설정 적용 | Null 검사 기본 설정 |
문 기본 설정을 사용하여 적용 | C# 단순 'using' 문 선호 |
throw 식 선호도 적용 | csharp_style_throw_expression |
관련 콘텐츠
- 빠른 작업
- EditorConfig 대한 .NET 코딩 규칙 설정