Я должен дать +1 Дрейцу. Единственная причина, по которой не стоит проводить рефакторинг, заключается в том, что у вас нет юнит-тестов. Но даже это не означает, что вы не должны рефакторинг. Я должен сказать, что мой modus operandus - это сначала функциональность кода, а затем всегда рефакторинг для решения проблем дизайна. Повторите тошноту.
«Достаточно хороший» шаблон, вероятно, является наиболее используемой методологией программирования на Земле, и это одна из причин, по которой наше программное обеспечение глючит и работает некорректно. Вместо того чтобы выбирать «путь» с наименьшей энергией, мы всегда выбираем «шаг» с наименьшей энергией.
Но будьте осторожны! Рефакторинг без надлежащих инструментов (и это будет зависеть от языка и IDE) - это все равно, что вбить винт: вы можете попасть туда, но это не будет эффективно (и у вас могут возникнуть проблемы).