it Новини Як писати хороший код: стиль, неймінг, коментарі та структура
Як писати хороший код: стиль, неймінг, коментарі та структура

Як писати хороший код: стиль, неймінг, коментарі та структура

2 856
07 травня 2025 в 17:15

Гарно читабельний код – це не просто хороша звичка, а необхідність. У цій статті розберемо, як писати код, який легко читати, розуміти та супроводжувати.

Дотримуйтеся єдиного стилю оформлення

Єдиний стиль коду робить його візуально передбачуваним. Незалежно від мови, дотримуйтеся стандартів, прийнятих у спільноті або всередині команди. Стиль включає в себе:

Відступи

Використовуйте відступи однакової ширини — найчастіше це 2 або 4 пробіли. Ніколи не змішуйте пробіли та табуляцію.


Форматування блоків

Дужки, переноси рядків, пробіли між операторами — усе має бути однорідним.

if (isValid) {
	processData();
} else {
	handleError();
}

Курс з вивчення Python

Можете пройти наш безкоштовний курс з вивчення Python

Обмеження довжини рядка

Не варто писати рядки довжиною в 300 символів. Найчастіше гарним правилом є обмеження до 80–120 символів.


Давайте змінним і функціям осмислені імена

Назва змінної має відображати її призначення. Не варто використовувати імена на кшталт x, data або tmp, якщо можна дати більш точну назву.

Поганий приклад:

a = 10 
b = get(x) 


Гарний приклад:

max_retry_attempts = 10 
user_profile = get_user_profile(user_id) 


Найменування функцій теж важливе. Функція має відповідати на питання: «що вона робить?»

# Погано
def handle():
	pass

# Добре
def handle_user_login():
	pass


Використовуйте дієслова у функціях (наприклад: send_email, calculate_sum) та іменники у змінних (email_address, user_profile).


Пишіть коментарі з розумом

Коментарі мають доповнювати код, а не дублювати його. Уникайте коментарів на кшталт:

// Збільшуємо лічильник на 1
counter = counter + 1;


Краще коментувати "чому", а не "що":

// Потрібно зробити +1, оскільки цикл має включати останній елемент
counter = counter + 1;


Використовуйте TODO, FIXME та інші мітки, якщо потрібно позначити тимчасові рішення або баги:

// TODO: замінити на асинхронне завантаження
loadUserData();


Коментарі до функцій особливо корисні, якщо вони довгі або містять складну логіку.



Розбивайте код на логічні блоки

Один файл — одна логіка. Один клас — одна відповідальність. Одна функція — одна дія. Це базові принципи чистої архітектури та SOLID.


Розділяйте функції

Якщо функція стала надто довгою (понад 30–50 рядків), подумайте про її поділ на кілька частин.


Групуйте код

Розділяйте логічні блоки порожніми рядками та коментарями — це допомагає швидко зрозуміти структуру.

def process_user_data(user):
	# Крок 1: валідація
	if not is_valid(user):
		raise ValueError("Invalid user")

	# Крок 2: оновлення профілю
	update_profile(user)

	# Крок 3: надсилання сповіщення
	send_notification(user)


Створюйте зрозумілу структуру проєкту

Структура проєкту має бути логічною та передбачуваною. Ось кілька правил:

  • Зберігайте файли за категоріями: controllers, models, services, utils.
  • Виносьте конфігурації в окремі файли.
  • Уникайте вкладеності більш ніж 2–3 рівнів.
  • Пишіть README з інструкціями щодо запуску проєкту.

Курс з вивчення C#

Можете пройти наш безкоштовний курс з вивчення C#

Приклад структури на Python:

project/
├── app/
│ ├── controllers/
│ ├── models/
│ ├── services/
│ └── utils/
├── config/
│ └── settings.py
├── tests/
├── requirements.txt
└── README.md


Використовуйте лінтери та форматтери

Автоматичні інструменти допомагають підтримувати єдиний стиль у всьому проєкті. Приклади:

  • JavaScript: ESLint, Prettier
  • Python: Black, Flake8
  • Go: gofmt, golangci-lint
  • PHP: PHP_CodeSniffer, PHP-CS-Fixer


Налаштуйте автозапуск лінтера під час комітів за допомогою husky або pre-commit хуків.


Висновок

Читабельний код — це повага до своєї команди та до себе в майбутньому. Він робить проєкти масштабованими, зменшує кількість багів і спрощує супровід. Дотримуйтеся простих правил: пишіть зрозумілі імена, підтримуйте стиль, грамотно коментуйте, будуйте структуру проєкту та автоматизуйте форматування. Укладена сьогодні увага до якості коду принесе велику економію часу завтра.

Telegram group

Підписуйтесь на нашу групу в Телеграмі 🇺🇦

Більше цікавих новин

Коментарі
Додати коментар

Поки що коментарів немає