Три книги про отладку

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

Три книги про отладку функциональных проблем, в порядке полезности, идут ниже.

  1. David J. Agans. Debugging — The 9 Indispensable Rules for Finding Even the Most Elusive Hardware and Software Problems — 2002
    debugging Достоинства этой книги.

    • Она короткая — всего 108 страниц. Её действительно можно (и стоит) прочитать целиком. Правил всего девять (и я согласен с 8,5 из них).
    • Она ультимативно прагматична. Всё, что описанно в ней, применимо в каждой ситуации, когда следует найти и устранить причины неисправного поведения.
    • Методы, описываемые в книге, универсальны. Они применимы к любой инженерной системе.Amazon link, link
  2. Andreas Zeller. Why Programs Fail, 2nd Ed. A Guide to Systematic Debugging — 2009
    why-fail В отличие от предыдущей, эта книга описывает более академический подход к отладке. Кого-то это оттолкнёт, кому-то, наоборот, понравится. Даётся минимальный формализм, определяются некоторые алгоритмы. Она более сфокусирована на программах. Однако описываемые в ней подходы (инструменты, дельта-отладка, поиск причин и следствий) не менее практически значимы. Хотелось бы видеть больше практических воплощений этих идей в используемых инструментах (отладчиках, трассировщиках, средах разработки).Amazon link, link

  3. Роберт М.Персиг. Дзэн и Искусство Ухода за Мотоциклом — 1974. Оригинал: Rоbеrt M Pirsig. Zen and the Art of Motorcycle Maintenancezen Эта книга не совсем про отладку. И не про дзен. И не про мотоциклы. Она — про всё это, и про ничего из этого. Чередование автобиографического рассказа о путешествии, откровений душевнобольного, истории отношений отца с сыном, экскурса в историю философии и науки, рассуждений о сущности «качества», отношения людей и техники. Секция об ~~отладке~~ обслуживании мотоцикла встречается внезапно. Книга длинная (для современного читателя с ограниченным окном внимания), но достойная. Изучавшие историю философии в аспирантуре найдут в ней знакомые мотивы.
    Перевод на lib.ru.

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


Written by Grigory Rechistov in Uncategorized on 09.05.2016. Tags: books, debugging, systematic debugging, zen,


Copyright © 2018 Grigory Rechistov