В большинстве своем начинающие программисты не обращают внимание на правильные названия переменных, функций, классов ( я был один из них ), после чего сильно страдают в будущем, потому что после неправильного нейминга приходится долго и мучительно переучиваться, так как эта привычка очень сильно въедается в мозг. А я еще после +- 2-ух лет занятий прикладным программированием решил стать профи в спортивном программировании, что также негативно сказалось на написании правильного кода.
Для чего это нужно?
Довольно простой и понятный вопрос, но его все-таки нужно обсудить, чтобы понимать с какой целью мы будем тратить непомерное количество усилий для придумывания грамотного названия переменной. А целью нашего труда будут являться сэкономленные десятки, сотни ( зависит от масштабов проекта ) человеко-часов, которые будут потрачены на рефакторинг и переименование абсурдных переменных, функций и т.д.
Имя переменной, функции или класса должно отвечать на все главные вопросы. Оно должно сообщить, почему эта переменная существует, что она делает и как используется. Если имя требует дополнительных комментариев, значит, оно не передает намерений программиста. ©Роберт Мартин
Что нужно знать, чтобы правильно наименовать переменные?
Для правильного нейминга нужно изучить следующие вещи:
1. Английский, чтобы правильно интерпретировать значения объектов в python
2. Понять что на самом деле делает функция или класс ( чтобы это понять используйте уточку )
Соглашении об именовании
Перед тем, как перейти к описанию переменных, функций и классов по отдельности, нужно понять стиль кода в python:
Функции, переменные, методы - пишите название в нижнем регистре, если название состоит из более, чем 1-го слова, разделяйте нижним подчеркиванием.
pow_numbers(number_1, number_2), split_string = input().split()
Классы - первая буква - заглавная, остальные в нижнем регистре ( CamelCase ). Если класс состоит из более чем 1-го слова, то каждое последующее слово начинается с заглавной буквы
EmployeeData, AdminSettings
Константы - на константы распространяются те же правила, что и на переменные, только константы нужно называть, используя буквы в верхнем регистре.
CONSTANT, MY_CONSTANT, MY_LONG_CONSTANT
Исключения - Так как исключения являются классами => к исключениям применяется стиль именования классов. Однако вы можете добавить Error в конце имени
ForbiddenError, FoundError
Переменные
Имена переменных ни в коем случае не должны пересекаться с названиями модулей ( math, string ), операторов ( and or not ) и других зарезервированных слов python ( add, sum ).
Функции и методы
Функция должна содержать в своем названии какое-то действие ( add, remove, set ) и функция должна делать ровно одно действие, то есть если вам нужно проделать над одним объектом два или более действий и у вас получается в названии что-то такое: pow_and_divide_numbers, то его необходимо переписать на две функции pow и devide.
Классы
Названия классов нужно писать в ед.ч. Если получается так, что класс делает слишком много разных задач, то нужно сделать несколько классов и разбить эти задачи среди них.
UserEdit, UserDelete