Я работаю над довольно большим унаследованным Rails-приложением. Большая часть кода совершенно ужасна, и я стараюсь сделать это лучше, когда я пройду через это.Рефакторинг устаревшего кода
Проблема заключается в том, нет никаких тестов и почти все неправильно. До сих пор я прошел через код и сделал много рукописных заметок на материалах, которые нужно реорганизовать, чтобы впоследствии я мог это сделать, когда я получаю тесты.
Но есть вещи, которые так просто и кричат для быстрого рефакторинга. Например:
def isValid(valid)
name = Long::AndUglyModule::UglyClass.getvalid(valid)
return name
end
весь класс выглядит так, что мне хочется просто переписать его
include Long::AndUglyModule
def is_valid(valid)
UglyClass.getvalid(valid)
end
проблема в том, что я боюсь введения некоторых тонких ошибок. С другой стороны, работа с кодом, который выглядит так, дает мне массу головных болей.
Лучше просто сделать простые рефакторинги мгновенно или оставить код как есть до тех пор, пока я на самом деле не буду работать с ним или изменить его напрямую?
все это относительное – clyfe
Это полностью зависит. Тот, который вы показываете, представляет собой тривиальный тест/спецификацию, но он также не имеет отношения к функциональности (за исключением, возможно, удаления возврата). Лучше сосредоточиться на вещах, которые действительно имеют значение, по крайней мере, вначале. –