Преимущества рефакторинга по живой системе по сравнению с рефакторингом по "книжным задачам"
1. не надо вникать в чужую предметную область - работаешь в своей.
2. не надо выдумывать тестовое окружение. Берем состояние кода на текущий момент времени и разбираем его. Код написан предшественниками, коллегами или даже самим программистом, но стихийно и/или давно.
3. Польза более явная, т.к. улучшенный код сразу приносит результат в виде ускорения работы системы и/или выделения четких границ модулей и/или уменьшения количества поддерживаемого кода.
4. Код всегда с тобой в исходном коде проекта. Всегда можно подсмотреть, если забыл, как были сделаны те или иные вещи.
Недостатки
Есть риск внесения ошибок. Поэтому рефакторинг я предпочитаю делать маленькими шагами и с повышенным вниманием к тестам.
Комментариев нет:
Отправить комментарий