C++ 프로그래밍의 버그를 예방하는 11가지 코딩 습관
C++ 프로그래머는 할당된 배열의 범위를 벗어나는 접근, 초기화하지 않은 메모리 읽기, 메모리 할당 해제 잊어버리기 등 온갖 종류의 실수를 범하기 쉽다. 이런 실수는 프로그램이 갑자기 멈추거나 이상한 결과를 나타내기 전까지는 알 수 없다. 이 책에서는 C++ 프로그래머가 공통적으로 범하는 실수를 다룬 후에, 어떻게 하면 그런 실수를 피할 수 있는지 알려준다. 또한 C++ 커뮤니티에서 몇 년 동안 쌓아온 좋은 프로그래밍 사례를 수집해서 알려준다.
대상 독자
C++ 프로그래머를 위한 칼퇴근 가이드
시간이 빠듯한 프로젝트에서 버그가 발견되면 때로는 밤을 새우기도 하는 것이 프로그래머의 일상이다. 아무리 유능한 프로그래머라도 버그를 피할 수는 없다는 뜻이다. 하지만 올바른 코딩 방법을 공부한 후 습관이 되도록 노력하면 많은 버그를 예방할 수 있다. 『C++ 버그 헌팅』의 작가는 본인의 경험과 많은 C++ 커뮤니티에서 언급했던 방법을 정리해 크게 11가지 원칙을 만들고, 직접 실무에 적용할 수 있는 소스 코드를 완성하는 과정을 이 책에 담았다. 사실 읽어 보면 "이게 뭐야!"라고 말할 수도 있을 것이나 여러분이 실제로 이 책에서 소개하는 원칙을 얼마나 지키면서 프로그래밍해봤는지 생각해보라. 아마 여러분은 이 책을 통해서 할 일은 다하면서도 칼퇴근하는 프로그래머가 될 것이다
1부 C++ 버그 해결 전략
1장. C++ 버그는 어디에서 발생하는가?
2장. 언제 버그를 잡아야 하는가?
2.1 왜 버그를 잡기에 가장 좋은 곳이 컴파일러인가?
2.2 컴파일러는 어떻게 버그를 잡는가?
2.3 자료형을 다루는 적절한 방법
3장. 실행 중에 에러가 발생하면 어떻게 해야 하는가?
2부 버그 해결: 한 번에 하나씩
4장. 범위를 벗어난 인덱스
4.1 동적 배열
4.2 정적 배열
4.3 다차원 배열
5장. 포인터 연산
6장. 유효하지 않은 포인터, 참조, 반복자
7장. 초기화되지 않은 변수
7.1 초기화된 숫자 자료형
7.2 초기화되지 않은 Boolean
8장. 메모리 누수
8.1 참조 카운팅 포인터
8.2 스코프 포인터
8.3 스마트 포인터의 소유권 강화
9장. NULL 포인터 역참조
10장. 복사 생성자와 할당 연산자
11장. 파괴자에 코드 작성하지 않기
12장. 비교 연산자를 일관되게 사용하는 방법
13장. 표준 C 라이브러리를 이용할 때의 에러
3부 버그 해결 즐기기: 테스팅부터 생산 단계를 위한 디버깅까지
14장. 일반적인 테스팅 원칙
15장. 에러 디버깅 전략
16장. 디버그하기 쉬운 코드 만들기
17장. 결론
리얼타임 eBook 안내
PDF 형식으로 제공되며, 다운로드한 eBook은 PDF 포맷을 지원하는 디바이스 또는 프로그램에서 제한없이 열람할 수 있습니다. 또한 eBook 내의 텍스트 검색 및 인쇄도 가능합니다.