Apakah ada teori atau buku tentang cara men-debug "secara umum"? [Tutup]

12

Saya membaca dan mempelajari banyak ilmu komputer dan teknik dan saya jarang atau tidak pernah melihat buku tentang debugging atau teori bagaimana debug (meskipun saya pasti mengembangkan beberapa teori debugging saya sendiri).

Apakah ada teori dan / atau buku debugging? Kenapa / mengapa tidak? Saya bisa membaca cara debug menggunakan gdb dan beberapa info paling berguna tentang pengembangan yang saya dapatkan dari membaca cara menggunakan gdb.

Niklas
sumber
1
Apa yang Anda maksud dengan mengatakan debugging theory? Topik apa yang harus dibahas?
superM
5
Dua makalah yang Anda (mungkin) akan menemukan menarik: Sebuah teori tentang rencana debugging & interpretasi & Algoritma Program Debugging
yannis
Ya itu disebut pemecahan masalah: en.wikipedia.org/wiki/Problem_solving
AndreasScheinert
1
@ SoboLAN Saya pikir penanya ingin teori aktual di balik debugging, dan 82/88 tidak terlalu tua, konsep inti adalah sama ... Tapi ya, bukan apa pertanyaannya.
yannis
1
Banyak konsep dalam rekayasa perangkat lunak saat ini sudah cukup tua, namun masih berlaku dengan baik untuk situasi saat ini. Jangan lupa, rodanya dikembangkan jutaan tahun yang lalu, namun tak satu pun dari kita memiliki masalah mengemudi pada 2 atau 4 dari mereka setiap hari dalam hidup kita lol
user60812

Jawaban:

6

Saya membaca Debug IT dari programmer Pragmatis. Karena hampir semua buku dari programmer pragmatis, cukup praktis tetapi tidak terlalu dalam, tetapi menyenangkan untuk membantu saya mengajari pengembang baru cara mengatur "pola pikir debug" mereka. Tidak ada ilmu hitam, tetapi lebih banyak akal sehat dan hampir semuanya terlihat sangat intuitif untuk programmer berpengalaman.

Wakil Presiden
sumber
6

Ada Debugging: 9 Aturan yang Tidak Terpisahkan untuk Menemukan Bahkan Masalah Perangkat Lunak dan Perangkat Keras yang Paling Sulit Dicari . Saya tidak ingat itu terlalu dalam atau sama sekali akademis, tetapi tentu saja memiliki beberapa wawasan dan cerita yang menarik.

Ini juga sangat berguna untuk melihat debugging dari perspektif perangkat keras - umumnya, perangkat keras debugging lebih sulit daripada perangkat lunak debugging. Setiap bab buku ini dimotivasi oleh "kisah perang" dari pengalaman penulis; sisa bab ini membahas teknik apa yang menurutnya berguna dalam kasus khusus itu. Cerita-ceritanya adalah campuran yang bagus dari pengembangan perangkat keras dan perangkat lunak.

Saya tentu menemukan pendekatan memulai setiap bab dengan kisah kehidupan nyata yang sangat instruktif.

Tikhon Jelvis
sumber
1
+1 Saya punya salinan buku itu, dan harus saya katakan, buku itu ditulis dengan sangat baik. Ini generik di bahwa Anda bisa men-debug apa-apa menggunakan aturan-aturan yang penulis menyarankan: kesalahan software, masalah hardware, masalah dengan toilet, apa benar-benar :)
Jason Evans
1
Ini buku yang bagus. Salah satu wawasan terbaik yang saya ambil darinya adalah gagasan tidak hanya memperbaiki masalah, tetapi kemudian mengambil perbaikan kembali untuk mengkonfirmasi bahwa masalah masih terjadi tanpa itu. Setelah Anda mencoba sepuluh hal untuk memperbaiki masalah, pada akhirnya, jika Anda menghilangkan langkah ini, Anda mungkin tidak tahu mana yang merupakan perbaikan yang sebenarnya.
Kyralessa
1

The Saff Squeeze adalah teknik yang dijelaskan oleh Kent Beck yang menggunakan tes dan refactoring untuk debugging:

Hit 'em High, Hit' em Low :

Pengujian Regresi dan Squeeze Saff

Kent Beck, Institut Three Rivers

Abstrak: Untuk mengisolasi cacat secara efektif, mulailah dengan tes tingkat sistem dan secara bertahap sebaris dan pangkas sampai Anda memiliki tes sekecil mungkin yang menunjukkan cacat.

Jörg W Mittag
sumber