Когда проводить рефакторинг?
Никогда, если:
- Код не будет меняться. Например, в одноразовых обработках или устаревшем механизме
- Изменение ничего нового не дадут. Рефакторинг ради рефакторинга бесполезен. Важно, чтобы появлялось новое качество. Например, масштабирование станет проще или снизится сложность будущего изменения
Позже, если:
- Предстоит много работы без мгновенного эффекта. Например, если даже все поменять сложность останется высокой
- Рефакторинг окупится не сразу. Например, изменения в этом месте происходят редко и стоимость понимания кода не высока
- Его можно делать постепенно и небольшими частями
Сразу после, если:
- Ожидание следующего удобного случая обойдется дороже. Например, одно и то же изменение нужно внести в несколько мест. Откладывание увеличит риск ошибок и стоимость следующих правок
- Без этого вы не чувствуете, что работа завершена
До, если:
- Рефакторинг даст быстрый результат. Например, код станет понятнее или его будет проще менять
- Вы точно понимаете, что и как нужно сделать.