Сколько времени я должен посвятить рефакторингу моего кода? [закрыто]

22

Я не знаю, только ли это со мной, но когда я начинаю рефакторинг некоторого кода, я трачу много времени на это, и это никогда не заканчивается.

Каждый раз, когда я снова читаю код, я нахожу что-то, что можно улучшить, рефакторинг кода похож на мой мозг в бесконечном цикле, а условное окончание достигается случайным образом без удовлетворения.

Итак, сколько времени я должен посвятить рефакторингу моего кода?

killown
источник
1
Возможный дубликат Когда реорганизовать

Ответы:

23

Если вы относитесь к рефакторингу как к своей собственной вещи, а не как к части процесса разработки, то он может стать бесконечным.

Если вы будете следовать тестовому подходу разработки red, green, refactor , то вам, как правило, не придется тратить много времени на рефакторинг по двум причинам:

  1. Вы будете проводить рефакторинг на ходу, так что это не должно стать гигантской задачей, просто еще один маленький шаг в цикле TDD.

  2. Внутреннее «давление» для написания следующего теста сохранит ваши усилия по рефакторингу на разумном уровне.

Если вы работаете с устаревшим кодом, следуйте «правилу бойскаута» дяди Боба. Установите время на короткий промежуток времени (скажем, 30 минут) и поставьте себе цель проверить код в более чистом виде, чем это было раньше. Каждый раз, когда вам нужно прикоснуться к коду, вы оставите его немного лучше. Со временем наиболее модифицированный код будет наиболее читаемым и хорошо продуманным в вашей кодовой базе.

Paddyslacker
источник
«Если вы рассматриваете рефакторинг как свою собственную вещь, а не как часть процесса развития, тогда он может стать бесконечным» ... Ото, «Кажется, что совершенство достигается не тогда, когда нечего добавить, но когда больше нечего забрать "- Антуан де Сент-Экзюпери ;-)
Mawg