Одна из самых неприятных (и, к сожалению, наиболее часто встречающихся) ситуаций, с которыми я столкнулся в своей повседневной жизни как разработчик, заключается в том, что я должен исправить ошибки или добавить функции в плохо разработанный код. Теперь, как хороший мастер, я бы хотел оставить код в лучшем состоянии, чем я его нашел. Часто новые функции не могут быть реализованы, если я не реорганизую дизайн. Ну, они могли, но это сделало бы код еще хуже.
К сожалению, это именно то, с чем мне обычно приходится сталкиваться. Я чувствую, что если есть одна вещь, которая сложна, нужно реорганизовать плохой код, особенно когда у вас есть крайние сроки. Прикосновение к плохому и сложному коду, который более или менее работает, страшно. В результате я добавляю еще больше беспорядка, когда я взламываю новую функцию в код без изменения существующего кода.
Теперь мой вопрос Как я могу научиться справляться с плохим кодом? Как я могу научиться понимать огромные кодовые базы, а затем реорганизовывать их части, не нарушая работу, которая уже работала и не превышала предельный срок? Есть ли литература, которую вы можете порекомендовать? У вас есть общие советы для меня?