Мы перерабатываем раздел нашего сайта для клиентов в .NET 3.5. Пока все идет хорошо, мы используем тот же рабочий процесс и хранимые процедуры, по большей части самые большие изменения - это пользовательский интерфейс, ORM (от словарей до LINQ) и, конечно, язык. Большинство страниц к этому моменту были тривиальными, но сейчас мы работаем над страницами с самым тяжелым рабочим процессом.
На главной странице нашего раздела принятия предложений 1500 строк, около 90% из которых - ASP, и, вероятно, еще 1000 строк в вызовах функций для включений. Я думаю, что 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. Если я получу вызов функции, которого у нас нет, я напишу определение.
После того, как я все закодировал, я сделаю несколько проходов при рефакторинге / тестировании. Мне просто интересно, есть ли у кого-нибудь советы о том, как сделать этот процесс немного проще / эффективнее.