У меня время от времени появляется необходимость добавить новый функционал к коду, написанному лет восемь назад. И тогда довольно часто возникает дилемма: переписывать ли старый код целиком, либо добавлять к нему одну заплатку за другой.
Старый код написан неграмотно, и если его переписывать с нуля, избегаешь прошлых ошибок – это как строить город по заранее составленному проекту, с большими проспектами. Но переписывание кода с нуля – большая работа, и поэтому часто я выбираю просто добавление к коду разных заплаток. И чем больше этих заплаток, тем легче в них окончательно запутаться. Проблему частично решает изобильное написание комментариев, которые служат “картой” в лабиринтах запутанного кода.
Как вы для себя решаете эти проблемы?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.