Ci sono teorie o libri su come eseguire il debug "in generale"? [chiuso]


12

Ho letto e studiato molta informatica e ingegneria e raramente o mai ho visto un libro sul debug o una teoria su come eseguire il debug (anche se sicuramente ho sviluppato alcune mie teorie di debug).

Ci sono teorie e / o libri di debug? Perché perché no? Posso leggere come eseguire il debug usando gdb e alcune delle informazioni più utili sullo sviluppo che ho ottenuto leggendo come usare gdb.


1
Cosa intendi dicendo debugging theory? Quali argomenti dovrebbe trattare?
superM

5
Due documenti si (probabilmente) trovato interessante: Una teoria di debug piani e interpretazioni e algoritmico programma Debug
Yannis

Sì, si chiama problem solving: en.wikipedia.org/wiki/Problem_solving
AndreasScheinert

1
@SoboLAN Pensavo che il richiedente desiderasse la teoria reale alla base del debug, e 82/88 non è poi così vecchio, i concetti chiave sono gli stessi ... Ma sì, non di cosa si tratta.
yannis,

1
Molti concetti dell'ingegneria del software oggi sono piuttosto vecchi, ma si applicano ancora molto bene alla situazione odierna. Non dimentichiamoci, la ruota è stata sviluppata milioni di anni fa, eppure nessuno di noi ha problemi a guidare su 2 o 4 di essi ogni giorno della nostra vita lol
user60812

Risposte:


6

Ho letto l' IT di debug da programmatori pragmatici. Come quasi tutti i libri di programmatori pragmatici, è piuttosto pratico ma non così profondo, ma è stato bello aiutarmi a insegnare ai nuovi sviluppatori come impostare la loro "mentalità di debug". Non c'è magia nera, ma più buon senso e quasi tutto sembra davvero intuitivo per programmatori esperti.


6

Esiste un debug: le 9 regole indispensabili per trovare anche i problemi hardware e software più elusivi . Non ricordo che sia terribilmente profondo o per nulla accademico, ma ha sicuramente alcune intuizioni e storie interessanti.

È anche molto utile vedere il debug dal punto di vista hardware - in genere, il debug dell'hardware è più difficile del software di debug. Ogni capitolo del libro è motivato da una "storia di guerra" dall'esperienza dell'autore; il resto del capitolo ripercorre quale tecnica ha trovato utile in quel caso particolare. Le storie sono un bel mix di sviluppo sia hardware che software.

Ho sicuramente trovato l'approccio di iniziare ogni capitolo con una storia di vita reale molto istruttivo.


1
+1 Ho una copia di quel libro e devo dire che è davvero ben scritto. È generico in quanto è possibile eseguire il debug di qualsiasi cosa utilizzando le regole suggerite dall'autore: guasti del software, problemi hardware, problemi con la toilette, qualsiasi cosa davvero :)
Jason Evans

1
Questo è un bel libro Una delle migliori intuizioni che ne ho tratto è stata l'idea non solo di risolvere un problema, ma poi di ritirare la correzione per confermare che il problema si verifica ancora senza di esso. Dopo aver provato dieci cose per risolvere un problema, alla fine, se ometti questo passaggio, potresti non sapere quale fosse la vera soluzione.
Kyralessa il

1

Lo squeeze Saff è una tecnica descritta da Kent Beck che utilizza test e refactoring per il debug:

Hit 'em High, Hit' em Low :

Test di regressione e Saff Squeeze

Kent Beck, Three Rivers Institute

Riassunto: per isolare efficacemente un difetto, iniziare con un test a livello di sistema e progressivamente in linea e potare fino ad avere il test più piccolo possibile che dimostri il difetto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.