“일반적인”디버그 방법에 대한 이론이나 책이 있습니까? [닫은]


12

나는 많은 컴퓨터 공학과 공학을 읽고 연구했으며 디버깅이나 디버깅 방법에 대한 책을 거의 보지 못했거나 전혀 보지 못했습니다 (확실히 내 자신의 디버깅 이론을 개발했지만).

디버깅 이론 및 / 또는 서적이 있습니까? 왜 안돼? gdb를 사용하여 디버깅하는 방법과 gdb를 사용하는 방법을 읽은 개발에 대한 가장 유용한 정보를 읽을 수 있습니다.


1
무슨 debugging theory말입니까? 어떤 주제를 다루어야합니까?
superM

5
아마도 두 가지 논문이 흥미로울 것입니다 : 디버깅 계획 및 해석 이론알고리즘 프로그램 디버깅
yannis

예 그라는 문제 해결은 다음과 같습니다 en.wikipedia.org/wiki/Problem_solving
AndreasScheinert

1
@SoboLAN 난 아스 커 디버깅 뒤에 실제 이론을 원한다고 생각하고 88분의 82은 아닌 것으로 , 핵심 개념은 같은 나이 ...하지만 그래, 질문에 대해 그렇지 않은 것을.
yannis

1
오늘날 소프트웨어 엔지니어링의 많은 개념은 상당히 오래되었지만 오늘날의 상황에도 여전히 잘 적용됩니다. 바퀴가 수백만 년 전에 개발되었다는 것을 잊지 마십시오. 그러나 우리 중 아무도 매일 우리 삶의 2 또는 4 개를 운전하는 데 문제가 없습니다. lol
user60812

답변:


6

Pragmatic 프로그래머로부터 디버그 IT 를 읽었습니다 . 실용 프로그래머의 거의 모든 책처럼, 실습은 깊지는 않지만 새로운 개발자에게 "디버그 사고 방식"을 설정하는 방법을 가르쳐주는 데 도움이되었습니다. 흑 마법은 없지만보다 일반적인 상식이 있으며 경험이 풍부한 프로그래머에게는 거의 모든 것이 직관적으로 보입니다.


6

가장 어려운 소프트웨어 및 하드웨어 문제를 찾기위한 9 가지 필수 규칙 : 디버깅 이 있습니다 . 나는 그것이 깊이 깊거나 학문적 이었다는 것을 기억하지는 않지만 흥미로운 통찰력과 이야기를 가지고 있습니다.

하드웨어 관점에서 디버깅을 보는 것이 매우 유용합니다. 일반적으로 하드웨어 디버깅은 소프트웨어 디버깅 보다 어렵습니다. 이 책의 각 장은 저자의 경험에서 나온 "전쟁 이야기"에 의해 동기가 부여됩니다. 이 장의 나머지 부분은 그 특정한 경우에 어떤 기술이 유용한 지 살펴 봅니다. 이 이야기는 하드웨어와 소프트웨어 개발의 좋은 조합입니다.

나는 실제 이야기로 각 장을 시작하는 접근법이 매우 유익하다는 것을 확실히 알았습니다.


1
+1 나는 그 책의 사본을 가지고 있고, 그것은 정말로 잘 쓰여졌다 고 말해야합니다. 저자가 제안한 규칙을 사용하여 무엇이든 디버깅 할 수 있다는 점에서 일반적입니다. 소프트웨어 결함, 하드웨어 문제, 화장실 문제, 실제로 :)
Jason Evans

1
이것은 훌륭한 책입니다. 내가 얻은 최고의 통찰력 중 하나는 문제를 해결하는 것뿐만 아니라 문제가 여전히 발생하지 않고 문제가 여전히 발생하는지 확인하기 위해 수정을 철회하는 아이디어였습니다. 문제를 해결하기 위해 10 가지를 시도한 후에이 단계를 생략하면 어떤 것이 실제 수정인지 알 수 없습니다.
Kyralessa

1

SAFF 짜기는 테스트 및 디버깅을 위해 리팩토링 켄트 벡을 사용하여 설명하는 기술이다 :

적중률 낮음, 적중률 낮음 :

회귀 테스트 및 사프 스퀴즈

켄트 벡, 쓰리 리버스 인스티튜트

개요 : 결함을 효과적으로 격리하려면 시스템 수준 테스트로 시작하여 결함을 보여주는 가장 작은 테스트가 될 때까지 점진적으로 인라인하고 정리하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.