IT Ижевск
IT Ижевск
@it_izhevsk

Работа с чужим старым кодом: как не сойти с ума

Работа с чужим старым кодом: как не сойти с ума

Рано или поздно каждый попадает в проект, который писали пять лет назад несколько поколений разработчиков. Первое желание — переписать всё заново. Почти всегда это ошибка.

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

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

Отдельный навык — археология. Смотрите историю изменений: комментарии к правкам объясняют больше, чем сам код. Спрашивайте старожилов, пока они есть в компании.

И психологическое: не спорьте с прошлыми авторами мысленно. Они работали в других условиях и с другими сроками. Через три года кто-то так же будет смотреть на ваш код и удивляться.

IT Ижевск — t.me/it_izhevsk
Этот пост опубликован в Telegram-канале IT Ижевск. Подписаться можно по ссылке: @it_izhevsk.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.