Существуют ли теории или книги о том, как отлаживать «в общем»? [закрыто]

12

Я читал и изучал много компьютерных наук и техники, и я редко или никогда не видел книгу об отладке или теорию отладки (хотя я, конечно, разработал некоторые собственные теории отладки).

Существуют ли теории отладки и / или книги? Почему, почему нет? Я могу прочитать, как отлаживать с помощью gdb, и некоторую полезную информацию о разработке, которую я получил, прочитав, как использовать gdb.

Никлас
источник
1
Что вы имеете в виду, говоря debugging theory? Какие темы это должно охватывать?
СуперМ
5
Две статьи, которые вы (вероятно) найдете интересными: теория отладочных планов и интерпретаций и отладка алгоритмических программ
yannis
Да, это называется решением проблем: en.wikipedia.org/wiki/Problem_solving
AndreasScheinert
1
@SoboLAN Я думал , что спрашивающий хотел фактическую теорию за отладку, и 82/88 не что старый, основные понятия такие же ... Но да, не то , что речь идет о.
Яннис
1
Многие концепции в разработке программного обеспечения сегодня довольно стары, но они все еще очень хорошо применимы к сегодняшней ситуации. Давайте не будем забывать, колесо было разработано миллионы лет назад, и тем не менее ни у кого из нас не было проблем с вождением 2 или 4 из них каждый день нашей жизни.
Lol

Ответы:

6

Я читал « Отладка ИТ» от программистов Pragmatic. Как и почти все книги от прагматичных программистов, она довольно практична, но не настолько глубока, но была полезна, чтобы помочь мне научить новых разработчиков, как настроить их «отладочный образ мыслей». Там нет черной магии, но больше здравого смысла и почти все выглядит действительно интуитивно понятным для опытных программистов.

VP.
источник
6

Существует Отладка: 9 Обязательных Правил для Обнаружения Даже Самых Неуловимых Программных и Аппаратных Проблем . Я не помню, чтобы это было ужасно глубоко или вообще академично, но у этого, конечно, есть некоторые интересные идеи и истории.

Это также очень полезно , чтобы увидеть отладку с аппаратной точки зрения - как правило, отладка аппаратных средств более сложные , чем отладка программного обеспечения. Каждая глава книги мотивирована «военной историей» из опыта автора; остальная часть главы посвящена тому, какую технику он нашел полезным в данном конкретном случае. Истории представляют собой хорошее сочетание как аппаратной, так и программной разработки.

Я, конечно, посчитал подход к началу каждой главы реальным сюжетом очень поучительным.

Тихон Джелвис
источник
1
+1 У меня есть копия этой книги, и я должен сказать, что она действительно хорошо написана. Это общее в том смысле, что вы можете отлаживать что угодно, используя правила, которые предлагает автор: сбои программного обеспечения, проблемы с оборудованием, проблемы с туалетом, что угодно на самом деле :)
Джейсон Эванс
1
Это отличная книга. Одним из лучших выводов, которые я извлек из этого, была идея не только исправить проблему, но и затем устранить ее, чтобы подтвердить, что проблема все еще возникает без нее. После того, как вы попробовали десять вещей, чтобы исправить проблему, в конце, если вы пропустите этот шаг, вы можете не знать, какая из них была реальной.
Kyralessa
1

Squeeze Saff является метод , описанный Кента Бека , который использует тесты и рефакторинг для отладки:

Хит их высокий, Хит их низкий :

Регрессионное тестирование и сжатие Saff

Кент Бек, Институт трех рек

Аннотация: Чтобы эффективно локализовать дефект, начните с теста на системном уровне и постепенно включайте его и сокращайте до тех пор, пока у вас не будет минимально возможного теста, демонстрирующего дефект.

Йорг Миттаг
источник