Skip to content

Commit a59c5c9

Browse files
committed
feat: Adding a note about clear variable names into python\clean-code [TASK] Computer Science (CS)
#1 (https://github.com/SENATOROVAI/python/issues/1) Closes: https://github.com/SENATOROVAI/python/issues/1
1 parent 1260b4c commit a59c5c9

2 files changed

Lines changed: 158 additions & 0 deletions

File tree

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"id": "4d573c12",
7+
"metadata": {},
8+
"outputs": [],
9+
"source": [
10+
"\"\"\"Choosing clear names for variables, functions, and classes.\"\"\""
11+
]
12+
},
13+
{
14+
"cell_type": "markdown",
15+
"id": "f7c8e8b0",
16+
"metadata": {},
17+
"source": [
18+
"## Компактные, содержательные имена важны для удобочитаемости вашей программы\n",
19+
"\n",
20+
"Если вы пишете не «одноразовый» код, который вы не собираетесь сопровождать\n",
21+
"после однократного запуска программы, вам стоит подумать над выбором хороших\n",
22+
"имен в вашей программе. Выбор имен — субъективный выбор, который делаете именно вы.\n",
23+
"Автоматизированные средства форматирования (такие как Black) не способны\n",
24+
"решить, как должны называться ваши переменные.\n",
25+
"\n",
26+
"#### Схемы регистра имен\n",
27+
"\n",
28+
"- Змеиный регистр `snake_case` разделяет слова символом подчеркивания.\n",
29+
"\n",
30+
"- Верблюжий регистр `camelCase` — слова записываются в нижнем регистре,\n",
31+
"но второе и следующие слова начинаются с заглавной.\n",
32+
"\n",
33+
"- Схема Pascal `PascalCase` — названа так, потому что применяется в языке\n",
34+
"программирования Pascal; аналогична схеме верблюжьего регистра, но первое\n",
35+
"слово в ней тоже начинается с заглавной.\n",
36+
"\n",
37+
"\n",
38+
"#### Соглашения об именах PEP 8\n",
39+
"\n",
40+
"**•** Все буквы должны быть буквами ASCII — то есть латинскими буквами\n",
41+
"верхнего и нижнего регистров без диакритических знаков.\n",
42+
"**•** Имена модулей должны быть короткими состоять только из букв нижнего регистра.\n",
43+
"**•** В схеме должны записываться \n",
44+
"**•** Имена классов необходимо записывать в схеме Pascal\n",
45+
"**•** Имена констант следует записывать в верхнем змеином регистре\n",
46+
"**•** Имена функций, методов и переменных записывают в нижнем змеином\n",
47+
"регистре\n",
48+
"**•** Приватные атрибуты классов всегда начинают с символа подчеркивания ( _ )\n",
49+
"\n",
50+
"\n",
51+
"#### Длина имен\n",
52+
"\n",
53+
"Имена не должны быть слишком короткими или слишком длинными. Так как код читают чаще, чем пишут, лучше все-таки задавать более длинные имена переменных. Не пропускайте буквы в своем коде. устаревшей считается венгерская запись — практика включения сокращения типа данных в имена. Например, имя `strName` указывает, что\n",
54+
"переменная содержит строковое значение. Современные языки и IDE могут предоставить программисту информацию о типе данных без этих префиксов\n",
55+
"\n",
56+
"\n",
57+
"\n",
58+
"#### Выбирайте имена, пригодные для поиска\n",
59+
"\n",
60+
"Чтобы имя было найдено немедленно, создавайте уникальные имена с более длинными именами переменных, которые содержат конкретную информацию. Лучше всего писать код, понятный тем, для кого английский язык не является родным, то есть прямолинейно, традиционно и без юмора.\n",
61+
"\n",
62+
"\n",
63+
"\n",
64+
"#### Не заменяйте встроенные имена\n",
65+
"\n",
66+
"Никогда не используйте встроенные имена Python для своих переменных. Наиболее часто заменяемые имена Python — all, any, date, email, file, format, hash,\n",
67+
"id, input, list, min, max, object, open, random, set, str, sum, test и type. Не берите их для своих идентификаторов. Другая распространенная проблема — присваивание файлам .py имен, совпадающих с именами сторонних модулей.\n",
68+
"\n",
69+
"\n",
70+
"#### Итоги\n",
71+
"\n",
72+
"Выбор имен не имеет никакого отношения к алгоритмам или компьютерной теории, и все же это важнейший фактор написания удобочитаемого кода. В конечном счете выбор имен, используемых в вашем коде, остается на ваше усмотрение, но вы\n",
73+
"должны учитывать существующие рекомендации. В PEP 8 вы найдете несколько\n",
74+
"соглашений о выборе имен — например, имена в нижнем регистре для модулей\n",
75+
"и имена в схеме Pascal для классов. Имена не должны быть слишком короткими\n",
76+
"или слишком длинными. Однако часто лучше сделать имя избыточным, чем недостаточно содержательным\n",
77+
"\n",
78+
"Имена упрощают чтение кода людьми, а не выполнение его компьютерами. Если\n",
79+
"ваш код хорошо читается, он будет понятным. Если он понятен, его легко изменить.\n",
80+
"А если его легко изменить, вам будет проще исправить ошибки или добавить новые\n",
81+
"возможности. Использование понятных имен — основополагающий фактор разработки качественного программного обеспечения."
82+
]
83+
}
84+
],
85+
"metadata": {
86+
"language_info": {
87+
"name": "python"
88+
}
89+
},
90+
"nbformat": 4,
91+
"nbformat_minor": 5
92+
}
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
"""Choosing clear names for variables, functions, and classes."""
2+
3+
# ## Компактные, содержательные имена важны для удобочитаемости вашей программы
4+
#
5+
# Если вы пишете не «одноразовый» код, который вы не собираетесь сопровождать
6+
# после однократного запуска программы, вам стоит подумать над выбором хороших
7+
# имен в вашей программе. Выбор имен — субъективный выбор, который делаете именно вы.
8+
# Автоматизированные средства форматирования (такие как Black) не способны
9+
# решить, как должны называться ваши переменные.
10+
#
11+
# #### Схемы регистра имен
12+
#
13+
# - Змеиный регистр `snake_case` разделяет слова символом подчеркивания.
14+
#
15+
# - Верблюжий регистр `camelCase` — слова записываются в нижнем регистре,
16+
# но второе и следующие слова начинаются с заглавной.
17+
#
18+
# - Схема Pascal `PascalCase` — названа так, потому что применяется в языке
19+
# программирования Pascal; аналогична схеме верблюжьего регистра, но первое
20+
# слово в ней тоже начинается с заглавной.
21+
#
22+
#
23+
# #### Соглашения об именах PEP 8
24+
#
25+
# **•** Все буквы должны быть буквами ASCII — то есть латинскими буквами
26+
# верхнего и нижнего регистров без диакритических знаков.
27+
# **•** Имена модулей должны быть короткими состоять только из букв нижнего регистра.
28+
# **•** В схеме должны записываться
29+
# **•** Имена классов необходимо записывать в схеме Pascal
30+
# **•** Имена констант следует записывать в верхнем змеином регистре
31+
# **•** Имена функций, методов и переменных записывают в нижнем змеином
32+
# регистре
33+
# **•** Приватные атрибуты классов всегда начинают с символа подчеркивания ( _ )
34+
#
35+
#
36+
# #### Длина имен
37+
#
38+
# Имена не должны быть слишком короткими или слишком длинными. Так как код читают чаще, чем пишут, лучше все-таки задавать более длинные имена переменных. Не пропускайте буквы в своем коде. устаревшей считается венгерская запись — практика включения сокращения типа данных в имена. Например, имя `strName` указывает, что
39+
# переменная содержит строковое значение. Современные языки и IDE могут предоставить программисту информацию о типе данных без этих префиксов
40+
#
41+
#
42+
#
43+
# #### Выбирайте имена, пригодные для поиска
44+
#
45+
# Чтобы имя было найдено немедленно, создавайте уникальные имена с более длинными именами переменных, которые содержат конкретную информацию. Лучше всего писать код, понятный тем, для кого английский язык не является родным, то есть прямолинейно, традиционно и без юмора.
46+
#
47+
#
48+
#
49+
# #### Не заменяйте встроенные имена
50+
#
51+
# Никогда не используйте встроенные имена Python для своих переменных. Наиболее часто заменяемые имена Python — all, any, date, email, file, format, hash,
52+
# id, input, list, min, max, object, open, random, set, str, sum, test и type. Не берите их для своих идентификаторов. Другая распространенная проблема — присваивание файлам .py имен, совпадающих с именами сторонних модулей.
53+
#
54+
#
55+
# #### Итоги
56+
#
57+
# Выбор имен не имеет никакого отношения к алгоритмам или компьютерной теории, и все же это важнейший фактор написания удобочитаемого кода. В конечном счете выбор имен, используемых в вашем коде, остается на ваше усмотрение, но вы
58+
# должны учитывать существующие рекомендации. В PEP 8 вы найдете несколько
59+
# соглашений о выборе имен — например, имена в нижнем регистре для модулей
60+
# и имена в схеме Pascal для классов. Имена не должны быть слишком короткими
61+
# или слишком длинными. Однако часто лучше сделать имя избыточным, чем недостаточно содержательным
62+
#
63+
# Имена упрощают чтение кода людьми, а не выполнение его компьютерами. Если
64+
# ваш код хорошо читается, он будет понятным. Если он понятен, его легко изменить.
65+
# А если его легко изменить, вам будет проще исправить ошибки или добавить новые
66+
# возможности. Использование понятных имен — основополагающий фактор разработки качественного программного обеспечения.

0 commit comments

Comments
 (0)