Snake case
snake_case ( рус. змеиный_регистр) — стиль написания составных слов, при котором несколько слов разделяются символом подчёркивания (_) и не имеют пробелов в записи, причём каждое слово обычно пишется с маленькой буквы — «foo_bar», «hello_world» и т. д. Такой стиль написания используется для именования переменных и функций в исходном коде[1], и иногда для именования файлов на компьютере.
Варианты
[править | править код]Существуют некоторые модификации snake_case:
- Вариант, в котором вместо символа подчёркивания используется дефис — kebab-case, или lisp-case[2]
(В компьютерном наборе следует различать несколько символов схожих по написанию, так как все они кодируются и сохраняются в памяти различными значениями кодов: дефис, минус, среднее тире, тире, дефис-минус и мягкий перенос (‐, −, -, —, -, ‐). В названии файлов и URI используется, как правило, дефис-минус, так как его проще всего набирать на клавиатуре.)- Вариант-модификация kebab-case, в котором каждое новое слово пишется с большой буквы — Train-Case.
- Вариант, в котором все буквы слов пишутся в верхнем регистре — SCREAMING_SNAKE_CASE.
Смысл метафоры
[править | править код]В результате применения этого стиля получаются идентификаторы_длинные_как_змея[3].
Как стандарт оформления кода
[править | править код]Языки программирования, в которых snake_case принят за правило:
- Perl — для имён переменных, функций и методов[4]
- Python — для имён переменных, функций и методов[5]
- Ruby — для имён символов, методов и переменных[6]
- Rust — для имён переменных, функций и модулей[7]
- PHP — для имён констант[8]
См. также
[править | править код]- Соглашения об именах (программирование)
- CamelCase
- Гендергэп
- ЧПУ (Интернет)
- Именование (программирование)[англ.]
Примечания
[править | править код]- ↑ Naming convention (programming) (англ.)
- ↑ «Camel_SNAKE-kebab» . Дата обращения: 18 октября 2014. Архивировано 11 июня 2018 года.
- ↑ "snake case" в wiktionary . Дата обращения: 3 октября 2018. Архивировано 3 октября 2018 года.
- ↑ perlstyle - Perl style guide - Perldoc Browser (англ.). Perl. — «... use underscores to separate words in longer identifiers ...» Дата обращения: 22 июня 2023. Архивировано 22 июня 2023 года.
- ↑ PEP8: Function and Variable Names . Дата обращения: 6 февраля 2019. Архивировано 13 июля 2018 года.
- ↑ Ruby Style Guide . Дата обращения: 3 мая 2015. Архивировано из оригинала 10 февраля 2016 года.
- ↑ The Rust Programming Language . Дата обращения: 19 мая 2016. Архивировано 7 мая 2016 года.
- ↑ PSR-1: Basic Coding Standard - PHP-FIG (англ.). www.php-fig.org. Дата обращения: 7 января 2024. Архивировано 31 марта 2019 года.