12 июня 2025, 09:31
3 минуты
Почему 90% кода пишется для людей, а не для машин?
Когда программист пишет код, он думает, что создаёт его для компьютера. В конце концов, именно машина выполняет инструкции, интерпретирует команды и превращает их в рабочие программы. Но если посмотреть глубже, станет очевидно: код пишется не для компьютера, а для людей.
Компьютер не заботится о том, как оформлен код, есть ли в нём комментарии и насколько легко его читать. Он просто выполняет команды. Но что произойдёт, если программист откроет свой код через полгода? Или если его коллега попробует разобраться в чужом проекте? Вот тогда становится понятно, почему хороший код — это код, который понятен человеку.
Компьютеру всё равно, как ты пишешь
Программисты любят спорить о стилях написания кода, правильных названиях переменных, количестве пробелов перед скобками и других деталях оформления.
Но если убрать все лишние пробелы, заменить осмысленные имена переменных на случайные наборы букв и убрать комментарии — компьютер ничего не заметит. Он выполнит код так же, как и раньше.
Если человек, работающий с этим кодом, не знает его контекста, ему придётся разбираться, что означает x, что за y и z и зачем они используются.
Почему читаемость кода важнее, чем его скорость
Некоторые программисты думают, что чем оптимальнее код, тем он лучше. В определённом смысле это правда, но на практике важнее не скорость, а поддерживаемость (например).
🔹 Код пишется один раз, а читается и изменяется много раз.
🔹 Поддержка непонятного кода дороже, чем написание нового.
🔹 Чужой код читается так же сложно, как головоломка, если он написан без учёта читаемости.
Если программа работает на 10 миллисекунд быстрее, но при этом её невозможно понять без пяти часов чтения — это плохой код.
Что делает код удобным для людей?
✅ Хорошие названия переменных и функций
Имя должно отражать смысл. user_balance — лучше, чем ub.
✅ Логичная структура кода
Разделение на файлы, модули и классы помогает понять, что за что отвечает.
✅ Комментарии там, где они нужны
Но не везде. Комментарий # увеличиваем счетчик на 1 возле counter += 1 бесполезен. А пояснение сложного алгоритма — полезно.
✅ Простота вместо излишней оптимизации
Лучше написать три понятные строки, чем одну гениальную, но непонятную.
Что будет, если писать только для машин?
📌 Разработчики потратят больше времени на разбор кода.
📌 Исправление багов станет медленным и дорогим.
📌 Проект потеряет гибкость, а его развитие затормозится.
📌 Новые программисты будут дольше вникать в проект.
А теперь представьте, что разработчик, писавший код, увольняется. Новая команда получает неразбираемый хаос, который проще переписать с нуля, чем разобраться.
Итог
Код должен быть понятным не только машине, но и человеку. Компьютеру всё равно, а вот программистам, которые будут с ним работать, нет. Чем проще и понятнее код, тем он лучше.
Поэтому хороший программист думает не только о том, как заставить код работать, но и о том, как сделать так, чтобы его мог понять любой разработчик, который с ним столкнётся.