Материал для канала Мы ж программист
Когда программисты пишут код, они должны придерживаться определенных правил и соглашений, чтобы снизить количество ошибок и повысить читабельность кода. Одно из таких соглашений – именование сущностей.
Никогда не называйте переменные, функции и константы односложно и непонятно. Вы сэкономите секунду в моменте, но усложните восприятие логики кода себе или коллегам. Например, вместо переменной i
используйте counter
или даже visitsCounter
, а вместо функции get
функцию getVisitsCounter
. Тогда код будет читаться легко, как книга. Подробнее всё это описано в классической литературе, обязательно читайте, например, “Совершенный код” Стива Макконнела.
Кроме того, существует несколько стилей формирования названий, характерных для разных языков и сценариев. Такой стиль записи называется нотация:
- Сamel сase (camelCase) – стиль, при котором названия записываются без пробелов, но каждое слово, кроме первого – с заглавной буквы. Подходит для переменных и функций в Java/PHP/C#. Например,
getVisitsCounter()
. - Pascal case (PascalCase) – тот же camel case, но первое слово записано с заглавной буквы, обычно используют для именования классов и типов. Кстати, назван в честь языка программирования Pascal, в нем писали консольные и даже десктопные приложения в 90-е годы и использовали как раз такую нотацию.
- Snake case (snake_case) – стиль, при котором названия записываются со знаком подчеркивания вместо пробелов. Подходит для переменных и функций в Python/Ruby/C.
- Screaming snake case – все слова записываются в верхнем регистре, так обычно обозначаются константы.
- Kebab case (kebab-case) – слова записываются в нижнем регистре и разделяются дефисами. Подходит для имен файлов и названий CSS-классов.
- Train сase (Train-Case) – слова начинаются с заглавной буквы и разделяются дефисом. Используется, например, в заголовках http-запросов.
- Flat case (flatcase) – всё записано одной строкой. Нечитабельно, но иногда используется, в названиях пакетов в Java, например.
И еще про одну нотацию, она касается записи сравнения переменной с константой – нотация Йоды (или условие Йоды). Заключается в том, что при сравнении переменная и значение меняются местами: if (21 == $visitsCounter)
. Такой подход позволяет избежать уязвимости при ошибке, когда вместо знака сравнения случайно или намеренно ставят знак присвоения, что является синтаксически верным и непросто отслеживается.