Чистый код

Что это такое

Чистый код — это код, который следующий читатель может менять безопасно. Речь не о стилевых предпочтениях и не о вкусе в пунктуации, а о наборе привычек: как называть сущности, насколько крупными делать функции, как выстраивать структуру и как обрабатывать ошибки. Все они служат одному — стоимость изменения остаётся пропорциональной самому изменению. Мера тут практична: сколько времени понадобится тому, кто этот код не писал, чтобы разобраться, что в нём происходит, и внести верную правку.

Почему это важно

Код читают гораздо чаще, чем пишут. Читатель при этом обычно — вы сами через полгода, и о рассуждениях, из которых вырос этот код, вы уже ничего не помните. Функция, за одним именем которой спрятаны четыре вещи, вынуждает восстановить все четыре, прежде чем тронуть любую из них, а восстановление — это и есть место, где заводятся ошибки. Плохая обработка ошибок усугубляет картину: проглоченный сбой превращает конкретную проблему в загадку, которая всплывёт совсем в другом месте. Пока код мал, такие привычки даются дёшево; однако задним числом, когда система уже зависит от беспорядка, привить их почти невозможно.

Что в этом треке

  1. Имена и маленькие функции (01-cs-fundamentals/08-clean-code/01-names-and-small-functions) — как выбирать имена, несущие смысл, и делить функции до тех пор, пока каждая не станет делать одну вещь.
  2. Структура и обработка ошибок (01-cs-fundamentals/08-clean-code/02-structure-and-error-handling) — дисциплина комментариев, видимость счастливого пути и отказ там, где сбой понятен.

Предварительные требования

Нет.

Что читать дальше

  • Рефакторинг (01-cs-fundamentals/19-refactoring) — механика улучшения структуры небольшими проверенными шагами вместо рискованной переписки.
  • Код-ревью (01-cs-fundamentals/17-code-review) — место, где эти привычки проверяет другой человек, прежде чем изменение вливается.
  • Переиспользование кода (01-cs-fundamentals/16-code-reusability) — как далеко заходить с выделением общего, когда функция стала ясной.