Мы находимся в процессе перепроектирования клиентской части нашего сайта в .NET 3.5. Пока все идет хорошо, мы используем тот же рабочий процесс и хранимые процедуры, по большей части самые большие изменения - это пользовательский интерфейс, ORM (от словарей до LINQ) и, очевидно, язык. Большинство страниц до этого момента были тривиальными, но теперь мы работаем над страницами с самыми тяжелыми рабочими процессами.
Главная страница нашего раздела принятия предложения - это 1500 строк, около 90% из которых - ASP, и, вероятно, еще 1000 строк в вызовах функций для include. Я думаю, что 1500 строк тоже немного обманчивы, так как мы работаем с такими драгоценными камнями.
function GetDealText(sUSCurASCII, sUSCurName, sTemplateOptionID, sSellerCompany, sOfferAmount, sSellerPremPercent, sTotalOfferToSeller, sSellerPremium, sMode, sSellerCurASCII, sSellerCurName, sTotalOfferToSeller_SellerCurr, sOfferAmount_SellerCurr, sSellerPremium_SellerCurr, sConditions, sListID, sDescription, sSKU, sInv_tag, sFasc_loc, sSerialNoandModel, sQTY, iLoopCount, iBidCount, sHTMLConditions, sBidStatus, sBidID, byRef bAlreadyAccepted, sFasc_Address1, sFasc_City, sFasc_State_id, sFasc_Country_id, sFasc_Company_name, sListingCustID, sAskPrice_SellerCurr, sMinPrice_SellerCurr, sListingCur, sOrigLocation)
Стандартная практика, которую я использовал до сих пор, - потратить около часа на чтение приложения, как для ознакомления с ним, так и для исключения закомментированного / устаревшего кода. Затем приступить к работе с упором на глубину. Я начну с начала, скопирую сегмент кода в aspx.cs
файл и начну переписывать, делая очевидные рефакторинги, особенно для того, чтобы воспользоваться нашим ORM. Если я получу вызов функции, которого у нас нет, я напишу определение.
После того, как я все закодировал, я сделаю несколько этапов рефакторинга / тестирования. Мне просто интересно, есть ли у кого-нибудь советы, как сделать этот процесс немного проще / эффективнее.