Skip to content

konstantine2121/debug_notes

Repository files navigation

Термины

Баг (bug — жук, мелкое насекомое) — распространенное среди программистов название ошибок в программах.

Следует отличать баг от глюка, который есть не что иное как симптом бага, вызывающий у пользователя нервно-истерическую реакцию.


Отладка — этап разработки компьютерной программы, на котором обнаруживают, локализуют и устраняют ошибки.

Существуют две взаимодополняющие технологии отладки:

  • Использование отладчиков 
  • Вывод текущего состояния программы с помощью расположенных в критических точках программы операторов вывода — на экран или в файл. Вывод отладочных сведений в файл называется журналированием (логированием).

Отладчик (debugger от bug) — компьютерная программа для автоматизации процесса отладки: поиска ошибок в других программах, ядрах операционных систем, SQL-запросах и других видах кода.

Базовые принципы

Ожидание - реальность

Оригинал

Для начала мы попытаемся сформулировать ряд базовых принципов, связанных с отладкой, и сделаем это в такой форме, что они, возможно, покажутся вам шуткой; вы вскоре сами убедитесь, что в данной шутке доля шутки совсем незначительна, а всё остальное - самая настоящая правда.

Итак:

  • ошибка всегда есть;

  • ошибка всегда не там;

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

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

  • если отладка - это процесс исправления ошибок, то написание программы - это процесс их внесения;

  • сразу после обнаружения ошибки дело всегда выглядит безнадёжным;

  • найденная ошибка всегда кажется глупой;

  • чем безнадёжнее всё выглядело, тем глупее кажется найденная ошибка;

  • компьютер делает не то, что вы хотите, а то, о чём вы попросили;

  • корректная программа работает правильно в любых условиях, некорректная - тоже иногда работает;

  • и лучше бы она не работала;

  • если программа работает, то это ещё ничего не значит;

  • если программа "свалилась", надо радоваться: ошибка себя проявила, значит её теперь можно найти;

  • чем громче грохот и ярче спецэффекты при "падении" программы, тем лучше - заметную ошибку искать гораздо проще;

  • если ошибка в программе точно есть, а программа все-таки работает, вам не повезло - это самый противный случай;

  • ни компилятор, ни библиотека, ни операционная система ни в чем не виноваты;

  • никто не хочет вашей смерти, но если что - никто не расстроится;

  • на самом деле всё совсем не так плохо - всё гораздо хуже;

  • первая написанная строчка текста будущей программы делает этап отладки неизбежным;

  • если вы не готовы к отладке - не начинайте программировать;

  • компьютер не взорвётся; но большего вам никто не обещал.

Навигация

Разделы
Что такое отладка
Список примеров с отладкой
Полезные ссылки

About

debug C# with Visual Studio 2022

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages