Re[11]: просто отладка
От: L_user  
Дата: 10.11.05 16:50
Оценка: 4 (1) +1
Здравствуйте, Kemm, Вы писали:

K>Здравствуйте, Глеб Алексеев, Вы писали:


L_>>>Итак, вы все же считаете, что отладка не должна занимать много времени, ну скажем 10%;

L_>>>а если иначе, то надо что-то менять?
ГА>>Позволю себе встрять в беседу без приглашения. Мне кажется, Kemm имел в виду, что отлаживать надо без отладчика, т.е. в первую очередь — юнит-тесты, во вторую — ассерты, в третью — трассировка, в четвертую — отладчик.

Я не против того, чтобы отладка была в таком виде, в каком вы описали, т.е. юнит-тесты,
...

Но! Это не причина для того, чтобы не улучшать инструментарий для отладки. Сколько не
избегай ее (а также отсутствия юнит-тестов и т.д.), все равно настанет такой момент, что
сложный баг потребует этой самой отладки в "N-ое кол-во времени", и я хочу быть готовым к таким моментам (не дай бог им наступать, но все равно наступает), с самой эффективной
комбинацией из отладчика, редактора, и вообще всем чем можно.

Кстати, и пример недалеко,- http://rsdn.ru/Forum/?mid=1479579&flat=0
Автор: Dmi_3
Дата: 09.11.05



Скажите, что такое редко случается? Такие редко, но все равно, 10 часов — лучше чем 20 часов или ничего (в смысле, вообще не найти ошибку).

Еще пример? Пожалуйста,- и самый, что ни на есть, юниксовый; до сих пор в отладчике gdb
(версия 6.3) не исправлена мерзкая ошибка с установкой точек останова (ошибка gdb/1091)
в конструкторах и деструкторах ("ставишь в конструктор break, а не работает, пролетает мимо "); Так вот, нашелся хороший человек,- http://people.freenet.de/BalaGi/, который
сделал patch, исправляющий ее (см. там же). Ему для этого потребовался целый день (он
не мэйнтэйнер, а ошибка-то его видно достала); догадайтесь, сколько времени из этого
он провел в отладчике?

K>И это в том числе. А так же:

K>1) valgrind. Мы же о юниксах говорим? И не о ядре? Тогда на линуксе или фре должно работать. Тогда без этой штуки вообще неясно что делать с memory leak'ами.

подобный инструмент, конечно, очень помогает; но не избавляет от отладки

K>2) bug report должен идти вместе с пунктом How To Repeat. Опять отладчик не при чем более чем в 90% случаев.


даже с how to repeat в проекте размером с, например, Firefox искать ошибку очень долго
отладчик "при чем" более 50%, если не 90%

K>Итого отладчик нужен редко. Причем в таких случаях, что и он-то особо не помогает обычно. Как показывает практика, именно тогда выявляются самые тупые ошибки. 8))


замечаете,- разная у нас статистика; может у вас проект(ы) слишком специализированные
(это к вопросу,- "а не на солнышке ли вы живете?")
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.