Соглашения об именах¶
Общие сведения¶
При написании программного кода, да и при работе за компьютером всегда приходиться давать имя чему-либо. При этом следует придерживаться:
- во-первых, ограничений по допустимому набору символов
- во-вторых, общепринятых и каким-то образом стандартизованным стилям наименований
Чувствительность в именах файлов
Например, при присваивании имен файлам, есть ограничения в наборах символов, которые зависят от операционной системы (ОС), а также они могут быть чувствительными к регистру.
При кодировании же на конкретном языке программирования определен свой набор допустимых символов, причем никак не зависящей от ОС, и чувствительность к регистру определена своя.
Стиль написания составных слов является одним самых важных соглашений о наименованиях в языках программирования, причем их может быть несколько в одном языке, но для разных целей.
Стили написания составных слов¶
Общие замечания¶
Даже среди самых распространенных стилей написания составных слов в разных источниках есть путаница.
Путаница в стилях
Например, стиль PascalCase
часто путают с camelCase
, но это, тем не менее, отдельный стиль. Также встречается, что для camelCase
вводят уточняющие стили, такие как upperCamelCase
и lowerCamelCase
.
Сделана попытка убрать такие несоответствия, в том числе в самих названиях этих стилей, которые должны говорить сами за себя. Ниже описаны основные стили, очищенные от каких-либо модификаций.
PascalCase¶
В стиле PascalCase
все слова пишутся слитно между собой, при этом каждое слово внутри имени пишется с прописной буквы.
Примеры: UserLoginCount
, DefaultContentManager
Встречающиеся псевдонимы CamelCase
, upperCamelCase
, по возможности, не используйте.
camelСase¶
В стиле camelCase
(«Верблюжий», «Горбатый») все слова пишутся слитно между собой и с прописной буквы начинаются все слова, кроме первого.
Примеры: userLoginCount
, defaultContentManager
Встречающиеся псевдонимы lowerCamelCase
, по возможности, не используйте.
snake_case¶
В стиле snake_case
(«Змеиный») все слова разделяются символом подчеркивания и пишутся строчными буквами.
Примеры: user_login_count
, default_content_manager
UPPER_SNAKE_CASE¶
В стиле UPPER_SNAKE_CASE
(«Змеиный в верхнем регистре») все слова разделяются символом подчеркивания и пишутся заглавными буквами.
Примеры: USER_LOGIN_COUNT
, DEFAULT_CONTENT_MANAGER
kebab-case¶
В стиле kebab-case
(«Шашлычный») все слова разделяются символом дефиса и пишутся строчными буквами.
Примеры: user-login-count
, default-content-manager
Соглашения в языках¶
В разделе кратко приводятся основные соглашения о наименованиях в распространенных языках програмирования.
C# (Си-шарп)¶
- PascalCase : классы, методы, свойства, интерфейсные, структуры, перечисления (перед именем интерфейса добавляется символ I)
- camelCase : переменные, включая параметры методов
- UPPER_SNAKE_CASE : константы
Дополнительно:
F# (эф-шарп)¶
- PascalCase : типы, методы, свойства, поля, интерфейсные типы, теги объединения)
- camelCase : параметры, внутренние let-значения
Дополнительно:
.NET - F#. Соглашения об именах .NET - Руководство по языку F# fsharp.org - Learning F#
C++¶
TypeScript¶
- PascalCase : имена типов, перечисляемые значения
- camelCase : имена функций, свойств и локальных переменных
Дополнительно:
- Microsoft. Руководство по кодированию
- Angular. Руководство по стилю
- typescriptlang.org - Документация
JavaScript¶
- PascalCase : классы или конструкторы
- camelCase : функции, объекты или экземпляры
Дополнительно:
- Руководство по написанию JavaScript-кода от Airbnb
- w3schools.com - JavaScript учебник
- javascript.ru - Советы по стилю кода
- MDN - Изучение веб-разработки. JavaScript
- Google JavaScript Style Guide
Python (Питон)¶
- PascalCase : классы
- UPPER_SNAKE_CASE : константы
- snake_case : все другие имена
Дополнительно:
PEP (англ. Python Enhancement Proposal) — предложений по развитию Python