История одного неудачного рефакторинга...
Помню, как-то раз решил я провести рефакторинг в огромном проекте. Код был написан еще древними индусами, разобраться в нем было просто невозможно. Ну, классика
Начал с малого – переименовал переменные, вынес повторяющиеся куски кода в отдельные функции. Вроде все шло хорошо, тесты проходили. Радовался я, как дитя, предвкушая, какой классный код у меня получится.
Но потом – бабах! После очередного коммита вся система просто перестала работать. Все логи валились ошибками, пользователи в панике. Оказалось, я сломал критически важную часть логики, о которой даже не подозревал. Час расплаты настал.
Пришлось откатываться к предыдущей версии, тратить еще несколько дней на восстановление работоспособности. С тех пор я стал гораздо осторожнее относиться к рефакторингу. Теперь прежде, чем что-то менять, я десять раз подумаю, что я делаю. Кстати, иногда в этих ситуациях выручает ссылка на Крáкен зеркало, там можно найти решения похожих проблем.