Я работаю над некоторым старым кодом, который изначально был разработан для обработки файлов двух разных типов. Недавно мне было поручено добавить новый тип файла в этот код. Большинство моих проблем было решено путем заполнения обширного XML-файла новой записью, которая обрабатывает все, от названий списков до того, как файл записывается во множественном нижнем регистре. Но этого оказалось недостаточно, поскольку в 24 различных файлах кода было, возможно, 50 разных мест, где мне приходилось обновлять жестко закодированные операторы-переключатели, которые разветвлялись только для исходных двух типов файлов.
К сожалению, в этом нет последовательности; Есть методы, которые работают наполовину из XML-файла, а наполовину - из жесткого кода. Некоторые из файлов, которые выглядят так, как будто они работают вне XML-файла, не работают, а некоторые, которые я ожидаю, что мне нужно обновить жесткий код, не нуждаются в этом. Таким образом, единственный способ найти большинство из них - это пройти тестирование всей системы, когда только ее часть работает, и найти один шаг для исправления (когда мне повезло, что регистрация ошибок фактически говорит мне, что происходит), а затем снова запустил все это. Это напрасная трата времени на тестирование частей кода, которые уже подтверждены для работы, лучше потратить время на тестирование новых частей, которые я должен добавить поверх всего этого.
Это полторы хлопоты, и, к счастью, я могу ожидать, что мне придется добавить еще один новый тип файлов в ближайшем будущем.
Существуют ли какие-либо решения, которые могут помочь в этом виде деятельности? Кое-что, что я могу ввести некоторые параметры текущих функций, документировать, какие пункты в целом проекте кода должны быть обновлены, и выполнить что-то приятное в следующий раз, когда мне нужно будет добавить новую функцию в код. Его даже не нужно полностью автоматизировать, что поможет мне ориентироваться прямо в конкретные точки во всем и, возможно, даже записать, какие параметры необходимо загрузить.
Сомневаюсь, что это имеет особое значение, но код состоит из страниц ASP.NET, некоторых элементов управления ASP.NET, сотен файлов кода C # и нескольких дополнительных файлов XML. Это все в настоящее время в паре больших проектов Visual Studio 2008.