국내에서 유난히 인기가 없는 전산/컴퓨터 관련 서적이 있다. 뭔지는 독자 여러분들도 이미 아시겠지만... 디버깅이다. B급 프로그래머도 이미 리눅스 문제 분석과 해결, 디버깅과 성능 튜닝을 번역해보았지만, 그다지 인기를 끌지 못했다. 디버깅은 개발 과정에서 상당히 중요한 비중을 차지하므로(어쩌면 개발 자체보다 더 많은 시간을 투입해야 할지도 모른다) 이런 부류의 개발자 서적이 인기를 끌지 못하는 이유가 상당히 궁금하긴 하지만(찌질한 디버깅 관련 서적을 들고 다니면 덜 프로페셔널하게 보이기라도 한 건가?), 꾹 참고 있다(혹시 이유를 아는 독자라면 댓글로 알려주시라.), 그냥 그저 그려려니 하고 있다. 이렇게 디버깅에 관심이 많은 B급 프로그래머다 보니, 이번에 새로 디버깅 관련 서적이 나온다는 소식을 듣고서 잽싸게 읽어보았다.
"Debug It! 실용주의 디버깅"은 제목에서 드러나듯 실용주의를 표방하는 디버깅 서적이다. 구체적이고 특정 프로그래밍 언어나 주변 환경(운영체제, 컴파일러, 라이브러리)에 맞춤식으로 만든 책이 아니라 전반적인 디버깅 철학에 대해 설명하고 있는 책이라고 보면 틀림없겠다. 따라서 읽는 즉시 도움이 되기를 기대했다면(예: 마이크로소프트 윈도우 환경에서 작성한 응용 프로그램의 메모리 누수 현상을 어떻게 해결합니까? pthread로 프로그램을 만들었는데 데드락이 걸려요!) 후회가 막급하겠지만, 전반적인 디버깅 과정에 대해 이해하고 싶었다면 나쁘지 않은 선택이라 본다.
책의 목차를 보면 이 책의 성격을 좀더 제대로 파악할 수 있다. 1부에서는 재현 - 진단 - 수정 - 반영이라는 전반적인 디버깅 과정을 설명하며, 2부에서는 문제 발견 방법과 디버깅 자세를 설명하며, 3부에서는 자주 일어나는 버그 패턴과 디버깅에 유리한 프로그램 작성 기법, 버그를 다루는 개발팀의 안티 패턴을 설명한다. 알기 쉽게 풀어쓰느라 저자가 고생했지만, 반대 급부로 깊이가 얕아지는 바람에 중급을 넘어선 개발자라면 이 책에서 아주 획기적이고 신기하고 새로운 사실을 발견하기 힘들지도 모르겠다(늘 그렇지만 정리를 위해 책을 읽는다면 나름 의미가 있다).
결론: 구성과 가독성이 뛰어나며 분량이 작기 때문에 초급 개발자가 주말을 틈타 잽싸게 읽으면 딱 좋은 책.
EOB
서평 감사드립니다. 잘 정리해 주셨네요.
답글삭제