Блог

Как жить с legacy-кодом сегодня и как аккуратно с него уходить: планы миграции, чек-листы, сравнения.

МиграцияЧем заменить GridView: сравнение QuickGrid, MudBlazor DataGrid, AG Grid и простых таблицGridView был универсальным ответом на любую таблицу в Web Forms. В новом стеке универсального ответа нет: есть четыре разных класса решений, и выбор зависит от того, что таблица на самом деле делает.8 октября 20269 мин БезопасностьКак укрепить старый сайт на ASP.NET Web Forms: ViewState MAC, SQL-инъекции, заголовки и TLS 1.2Сайт на Web Forms, написанный пятнадцать лет назад, часто работает без единой правки кода и так же давно не проверялся на безопасность. Собрали меры, которые закрывают самые частые дыры и почти не требуют переписывания страниц.29 сентября 202610 мин СопровождениеАудит legacy-кодовой базы на VB.NET: чек-лист перед доработкойПрежде чем добавлять функцию в проект десятилетней давности, стоит потратить день на аудит. Он покажет, где код сломается от первой же правки, и сэкономит недели на исправлении последствий.24 сентября 20269 мин МиграцияWinForms на VB.NET в .NET 8: Upgrade Assistant, My, удалённые контролы и подводные камниVisual Basic в современном .NET жив: WinForms-приложения на VB.NET собираются под .NET 8, дизайнер форм работает, а пространство My поддерживается. Но перенос это не смена одной строки в проекте. Разбираем, что сделает инструмент, а что придётся доделать руками.16 сентября 202610 мин ПрактикаМакросы VBA в Excel: когда переносить логику в Power Query, Office Scripts или .NETVBA никуда не исчез, но вокруг него появились инструменты, которые решают часть задач лучше. Разбираем, какой макрос куда переносить и какие оставить в покое.9 сентября 20269 мин ПрактикаКак покрыть тестами legacy VB.NET: характеризационные тесты, швы и обёрткиВ старом VB.NET-проекте тестов обычно нет, а логика размазана по формам, модулям и Shared-методам. Переписать всё ради тестируемости нельзя, но начать покрывать код тестами можно уже на этой неделе. Показываем порядок действий и минимальные приёмы.2 сентября 20269 мин МиграцияПошаговый план миграции ASP.NET Web Forms на ASP.NET Core и BlazorПереписать Web Forms-приложение за один заход почти никому не удаётся. Рабочий путь другой: новое приложение встаёт перед старым и забирает страницы по одной, пока старое не опустеет.27 августа 202610 мин Сопровождение64-битный Office и старый код: Declare PtrSafe, LongPtr и совместимость с VB6С 2019 года Microsoft ставит 64-битный Office по умолчанию, и макросы с вызовами Windows API начинают падать ещё на этапе компиляции. Разбираем, как править объявления, что делать с общим кодом VB6 и VBA и какие поломки не лечатся одной правкой.20 августа 20269 мин СопровождениеVB6 в 2026 году: сборка, Windows 11, 32 бита и регистрация COMПриложения на Visual Basic 6 до сих пор считают деньги, печатают накладные и управляют станками. Собрали практики, которые помогают держать их живыми на современных Windows без авралов.12 августа 20269 мин