DotNet 형식으로 C# 코드를 예쁘게
설치
EditorConfig
첫 번째 단계에서 내 프로젝트에 대한 .editorconfig 파일을 생성했습니다. 이Editorconfig 파일은 Visual Studio에서 들여쓰기 및 간격 또는 래핑 기본 설정과 같은 코딩 스타일을 정의하는 위치입니다.
DotnetFormat
두 번째 단계는 다음 명령을 사용하여 내 로컬 컴퓨터에 DotnetFormat 도구를 설치하는 것입니다.
dotnet tool install -g dotnet-format
이 도구는 .editorconfig 파일의 스타일 기본 설정에 따라 내 코드의 서식을 지정합니다.
StyleCop.Analyzers
세 번째 단계는 StyleCop Analyzer를 설치하는 것입니다. 설명서에 지정된 대로 NuGet 패키지 StyleCop.Analyzers를 추가하는 것이 바람직한 방법을 따랐습니다. 나는 또한 이것이 도움이 된다는 것을 알았고 저자가 권장하는 단계를 따라했습니다. 프로젝트 파일 확장에서 빌드 시 StyleCop을 트리거할 수 있도록 다음 줄을 프로젝트에 추가했습니다.
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" Condition="$(MSBuildProjectExtension)=='.csproj'">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
마지막 단계는 내 .editorconfig 파일을 편집하여 다음과 같이 내 프로젝트에 원하지 않는 규칙을 비활성화하는 것입니다. using 지시문은 네임스페이스 선언 내에 나타나야 합니다.
dotnet_diagnostic.SA1200.severity = None
그러나 내 프로젝트를 빌드할 때 여전히 이 규칙에 대한 경고가 표시되었으므로 이에 대해 더 조사해야 할 것 같습니다.
빌드 이벤트
내 프로젝트에 대한 StyleCop의 경고를 자동으로 수정하는 방법을 찾는 데 어려움을 겪었습니다. 360개의 경고가 있었는데 수동으로 수정하려면 시간이 많이 걸립니다. 운 좋게도 같은 반 친구인 김민수 씨의 글을 읽었는데 그는 닷넷 형식을 타사 분석기와 함께 사용할 수 있다고 언급했습니다. 훌륭한 발견이며 이 명령을 사용하여 style-cop의 모든 경고를 수정할 수 있습니다.
dotnet-format -a warn ./shinny-ssg.sln
이 명령을 사용하면 빌드 시 StyleCop.Analyzers를 트리거하기 위해 프로젝트 파일 확장명을 수정할 필요가 없으며 모든 작업을 dotnet 형식으로 유지할 수 있습니다.
Microsoft Visual Studio에는 프로젝트용build events configuration이 있으며 프로젝트 빌드 시 자동 서식 코드 작업을 트리거하는 데 사용했습니다. 다음과 같이 프로젝트를 설정했습니다.
내 프로젝트에서 dotnet 빌드를 실행한 후 두 개의 dotnet 형식 명령으로 6개의 서식 오류와 360개의 경고가 수정되었습니다.
편집기/IDE 통합
Visual Studio는 vsssetings 파일을 통해 개발 환경을 복제하는 훌륭한 방법을 제공합니다. 내 프로젝트의 새로운 기여자는 프로젝트 리포지토리에서 사용할 수 있는 ShinnySSG-2021-11-06.vssettings를 가져와서 나와 동일한 개발 환경을 가질 수 있습니다.
결론
코드 서식 지정은 코드 품질을 개선하는 첫 번째 방법이며 검토자가 버그를 발견하고 제안을 제공하기가 더 쉬워집니다. 이 작업을 훨씬 더 쉽게 만들어주는 훌륭한 도구를 발견하게 되어 기쁩니다.
Reference
이 문제에 관하여(DotNet 형식으로 C# 코드를 예쁘게), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/hphan9/prettier-your-c-code-with-dotnet-format-75텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)