Добавить в корзинуПозвонить
Найти в Дзене
Уроки по программированию

Лучшие разработчики пишут минимум кода

Если вы думаете, что хороший программист - это тот, кто пишет тысячи строк кода в день, то у меня для вас новость: самые сильные разработчики стараются писать как можно меньше кода. И это не лень. Это профессионализм. Чем больше опыта у программиста, тем лучше он понимает одну простую истину: Каждая строка кода - это будущая проблема. Разберёмся, почему опытные разработчики всё чаще выбирают путь минимального кода. Начинающие разработчики часто думают, что задача - написать код, который работает. Опытные знают: настоящая задача - написать код, который будет жить годами. Каждая строка кода означает: Поэтому хороший разработчик всегда задаёт себе вопрос: Можно ли решить эту задачу без написания нового кода? Это звучит как шутка, но это правило индустрии. Код без багов - это код, который не существует. Поэтому опытные разработчики: Иногда удаление 500 строк кода - гораздо более ценная работа, чем написание новых. Новички любят писать сложные и "умные" решения. Опытные разработчики знают:
Оглавление

Если вы думаете, что хороший программист - это тот, кто пишет тысячи строк кода в день, то у меня для вас новость: самые сильные разработчики стараются писать как можно меньше кода. И это не лень. Это профессионализм. Чем больше опыта у программиста, тем лучше он понимает одну простую истину:

Каждая строка кода - это будущая проблема.

Разберёмся, почему опытные разработчики всё чаще выбирают путь минимального кода.

Каждый код нужно поддерживать

Начинающие разработчики часто думают, что задача - написать код, который работает. Опытные знают: настоящая задача - написать код, который будет жить годами.

Каждая строка кода означает:

  • её нужно тестировать
  • её нужно поддерживать
  • её нужно понимать через 2-3 года
  • её может сломать другой разработчик

Поэтому хороший разработчик всегда задаёт себе вопрос:

Можно ли решить эту задачу без написания нового кода?

Лучший код - тот, которого нет

Это звучит как шутка, но это правило индустрии. Код без багов - это код, который не существует. Поэтому опытные разработчики:

  • используют готовые библиотеки
  • применяют фреймворки
  • избегают изобретения велосипеда
  • удаляют лишний код

Иногда удаление 500 строк кода - гораздо более ценная работа, чем написание новых.

Простота выигрывает у "умности"

Новички любят писать сложные и "умные" решения. Опытные разработчики знают:

Если код выглядит слишком умно — его никто не поймёт.

Через полгода даже сам автор может не вспомнить, что он хотел сделать. Поэтому зрелые программисты выбирают:

  • простые конструкции
  • очевидную логику
  • минимальное количество абстракций

Чем больше кода - тем больше багов

Существует негласное правило разработки:

Количество багов растёт вместе с количеством кода.

Больше кода означает:

  • больше условий
  • больше ветвлений
  • больше мест, где можно ошибиться

Поэтому опытные разработчики стараются:

  • упростить алгоритмы
  • сократить код
  • убрать ненужные функции

Настоящее мастерство - в удалении кода

В крупных компаниях иногда происходят парадоксальные вещи. Разработчик может прийти в проект и:

  • удалить 20% кода
  • ускорить систему
  • упростить архитектуру

И это считается большим достижением. Есть даже известная фраза инженера из компании Apple:

«Лучший код - это удалённый код».

В больших системах код становится дорогим

В небольшом проекте лишний код - это просто неудобство. В крупных системах это уже проблема:

  • медленнее сборка
  • сложнее тестирование
  • труднее onboarding новых разработчиков
  • выше риск ошибок

Поэтому в компаниях вроде Google или Netflix ценят разработчиков, которые умеют упрощать системы, а не усложнять их.

Хороший разработчик думает архитектурой

Новичок думает:

"Как написать этот код?"

Опытный разработчик думает иначе:

  • нужен ли этот код вообще?
  • можно ли решить задачу проще?
  • можно ли переиспользовать существующее решение?

Иногда лучший рефакторинг - это удалить половину системы.

Итог

С опытом программисты понимают, что их работа - не писать код. Их работа - решать проблемы, а иногда лучший способ решить проблему - не писать код вообще. Поэтому опытные разработчики стремятся к трём вещам:

  • меньше кода
  • проще код
  • понятнее код

И именно поэтому самые сильные инженеры часто выглядят как люди, которые пишут меньше всех, но делают самые надёжные системы.