CA1709: 식별자는 정확한 대/소문자를 사용해야 합니다.
항목 | 값 |
---|---|
RuleId | CA1709 |
범주 | Microsoft.Naming |
주요 변경 내용 | 호환성이 손상되는 변경 - 어셈블리, 네임스페이스, 형식, 멤버, 매개 변수에 적용되는 경우 호환성이 손상되지 않는 변경 - 제네릭 형식 매개 변수에 적용되는 경우 |
원인
식별자의 이름에 대/소문자가 올바르게 지정되지 않았습니다.
-또는-
식별자의 이름에 2자로 된 머리글자어가 포함되어 있고 두 번째 문자가 소문자입니다.
-또는-
식별자의 이름에 3자 이상의 대문자로 된 머리글자어가 포함되어 있습니다.
규칙 설명
명명 규칙은 공용 언어 런타임을 대상으로 하는 라이브러리에 대한 일반적인 모양을 제공합니다. 이 일관성 때문에 새 소프트웨어 라이브러리에 필요한 학습 곡선이 줄어들고 라이브러리가 관리 코드 개발 전문가에 의해 개발되었다는 고객 신뢰도가 향상됩니다.
규칙에 따라 매개 변수 이름은 카멜식 대/소문자를 사용하고 네임스페이스, 형식, 멤버 이름은 파스칼식 대/소문자를 사용합니다. 카멜식 대/소문자를 사용하는 이름에서 첫 문자는 소문자이고 이름에 포함된 나머지 단어의 첫 문자는 대문자입니다. 카멜식 대/소문자를 사용하는 이름의 예로는 packetSniffer
, ioFile
, fatalErrorCode
가 있습니다. 파스칼식 대/소문자를 사용하는 이름에서 첫 문자는 대문자이고 이름에 포함된 나머지 단어의 첫 문자는 대문자입니다. 파스칼식 대/소문자를 사용하는 이름의 예로는 PacketSniffer
, IOFile
, FatalErrorCode
가 있습니다.
이 규칙은 대/소문자에 따라 이름을 단어로 분할하고 “In” 또는 “My”와 같이 2자로 된 일반적인 단어 목록에서 2자로 된 단어를 확인합니다. 일치 항목이 없는 경우 단어를 머리글자어로 가정합니다. 또한 이 규칙에서는 이름의 끝에 대문자 4개나 대문자 3개가 연속으로 포함된 경우 머리글자어를 발견했다고 가정합니다.
규칙에 따라 2자로 된 머리글자어는 모두 대문자를 사용하고, 3자 이상의 머리글자어는 파스칼식 대/소문자를 사용합니다. 이 명명 규칙을 사용하는 예로는 ‘DB’, ‘CR’, ‘Cpa’, ‘Ecma’가 있습니다. 규칙을 위반하는 예로는 ‘Io’, ‘XML’, ‘DoD’가 있고, 매개 변수가 아닌 이름의 경우 ‘xp’ 및 ‘cpl’이 있습니다.
‘ID’는 이 규칙을 위반하는 특별한 경우입니다. 'Id'는 머리글자어가 아니라 'identification'의 약어입니다.
위반 문제를 해결하는 방법
대/소문자가 올바르게 지정되도록 이름을 변경합니다.
경고를 표시하지 않는 경우
고유한 명명 규칙이 있거나 식별자가 회사 또는 기술 이름과 같은 적절한 이름을 나타내는 경우 이 경고를 표시하지 않아도 됩니다.
코드 분석 사용자 지정 사전에 특정 용어, 약어, 머리글자어를 추가할 수도 있습니다. 사용자 지정 사전에 지정된 용어는 이 규칙의 위반에서 제외됩니다. 자세한 내용은 방법: 코드 분석 사전 사용자 지정을 참조하세요.
관련 규칙
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기