Опытный разработчик не так давно зашёл в .Net и поставил цель получить сертификат Microsoft. Свой ежедневный прогресс он описывает на канале .Net Разработчик. Заметки об изученном материале, советы по повышению производительности и поддержке мотивации, ин
День 1102. #Карьера
Ошибки Прошлых Поколений
Ник Кравер недавно написал в твиттере:
«Вчера я потратил 5 часов на отладку того, как, чёрт возьми, это происходит, только для того, чтобы проснуться в 5 утра и понять: пропущена строка кода. Её нет уже 8 лет. Это никогда не работало. Но из-за маскировки в другом слое это просто не имело значения.»
Вот изменение, которое он добавил в код.
У меня тоже такое случалось. Как-то попросили добавить столбец в результаты поиска (основной функционал нашего сервиса). Код был ещё на классическом ASP. Вызываю я какой-то метод на объекте RecordSet – и ловлю NullReference. Посреди кода, активно обращающегося к этому RecordSet. Прилично офигеваю и лезу дебажить. Оказывается, результаты скидываются в другой объект, RecordSet уничтожается, а ошибки маскировались вызовом «On Error Resume Next» где-то выше по стеку вызовов – я его закомментировал, пока делал изменения. Этот код только при мне «работал» лет 6, и примерно ещё лет 10 до меня.
Бывали у вас подобные истории в практике?