🔥 Как правильно именовать объекты в Python?
1. Какие стили именования вообще бывают?
* camelCase - первая буква первого слова маленькая, остальные - большие
* PascalCase или UpperCamelCase - все первые буквы большие
* snake_case - все маленькие, слова разделены _
* kebab-case - все маленькие, слова разделены -
* UPPER_SNAKE_CASE - все большие, разделены _
2. Как выбрать стиль для конкретного объекта?
Просто руководствуйтесь общим правилом:
* модули - snake_case
* классы - PascalCase
* функции/методы - snake_case
* переменные - snake_case или camelCase
* константы - UPPER_SNAKE_CASE
3. А какими должны быть имена переменных?
* Легко читаемыми: userToken
* Не слишком длинными: не userApiAccessToken, а userToken
* Достаточными для передачи смысла: token - слишком общее название, лучше уточнить - userToken или accessToken
* Общие имена тоже можно использовать, но только если из контекста и так все ясно. Например:
def update_user(self, data):
self.userk = datak for k in data.keys()]
* Сокращения можно использовать только если переменная исчезает мгновенно. Например: lambda a: a**2.
4. Как лучше - 'create\_user' или 'user\_creation'?
И тут есть парочка полезных рекомендаций:
* функции и методы → глаголы: update_user, create_record
* булевые функции/переменные отвечают на вопрос «да/нет»: isGuest, shouldClear, hasRights, canAccess
* коллекции - множественное число: random_words, users_list
5. Универсальное правило
В именовании переменных есть волшебное правило, которое покрывает абсолютно все ситуации. И состоит оно всего из 3 пунктов:
* Названия должны быть такими, чтобы однозначно было понятно, что это и что там лежит
* Стили именования должны быть согласованы: можете использовать любой стиль, главное не мешайте их между собой
* Исключения из правил есть. Всегда. Например, shouldHideMobileMenu - и никуда тут не деться
В конце концов, руководствуйтесь здравым смыслом 😉
- - - - -
► Задачки по программированию и аналитике 👉🏻 https://vk.cc/cbZy9Y