CA1709: идентификаторы должны иметь правильный регистр
TypeName |
IdentifiersShouldBeCasedCorrectly |
CheckId |
CA1709 |
Категория |
Microsoft.Naming |
Критическое изменение |
Критическое — если нарушение происходит в сборках, пространствах имен, типах, членах и параметрах. Не критическое — если вызывается для параметров универсального типа. |
Причина
Обнаружен неправильный регистр знаков в имени идентификатора.
— или —
Имя идентификатора содержит двухбуквенный акроним, и вторая буква является строчной.
— или —
Имя идентификатора содержит акроним из трех или более прописных букв.
Описание правила
Соглашения об именах обеспечивают единообразие библиотек, предназначенных для выполнения в среде CLR. Это позволяет сократить время обучения, необходимое для освоения новых библиотек программного обеспечения, и укрепить уверенность клиента в том, что библиотека была разработана опытным разработчиком управляемого кода.
В соответствии с соглашением, в именах параметров используется смешанный регистр знаков, а в именах членов — стиль языка Pascal. Согласно смешанному регистру в именовании, первая буква имени является строчной, а первые буквы всех остальных лексем имени — прописные. Примеры имен в смешанном регистре: "packetSniffer", "ioFile" и "fatalErrorCode". Согласно стилю языка Pascal, и первая буква имени, и первые буквы всех остальных лексем имени являются прописными. Примеры имен в стиле языка Pascal: "PacketSniffer", "IOFile" и "FatalErrorCode".
Данное правило разбивает имя на лексемы на основе соглашения об использовании прописных и строчных букв и проверяет все двухбуквенные лексемы на совпадение с элементами списка распространенных двухбуквенных слов, таких как "In" или "My". Если совпадения не найдены, слово считается акронимом. Кроме того, данное правило считает акронимом четыре последовательные прописные буквы имени или три последовательные прописные буквы, расположенные в конце имени.
Согласно соглашению, в двухбуквенных акронимах используются только прописные буквы, а в акронимах, содержащих три и более знаков, применяется стиль языка Pascal. Следующие примеры соответствуют соглашению об именовании: "DB", "CR", "Cpa" и "Ecma". Следующие примеры нарушают соглашение об именовании: "Io", "XML", "DoD" и, для имен элементов, не являющихся параметрами, "xp" и "cpl".
Лексема "ID" является специальным случаем и не нарушает данное правило. ' Id" является не аббревиатурой, а сокращением слова "identification" (идентификатор).
Устранение нарушений
Исправьте регистр знаков имени в соответствии с соглашением.
Отключение предупреждений
Отключение предупреждений о нарушении данного правила безопасно в том случае, если используются пользовательские соглашения об именовании или идентификатор представляет имя собственное, например название компании или технологии.
Можно также добавлять специальные термины, сокращения и акронимы в пользовательский словарь анализа кода. Термины заданные в пользовательском словаре не могут вызвать нарушение данного правила. Дополнительные сведения см. в разделе Практическое руководство. Настройка словаря анализа кода.
Связанные правила
CA1708: идентификаторы должны отличаться не только регистром