C 프로그래밍에 대한 전문가의 조언은 정말로 찾기 쉽지 않다. 객체 지향 프로그래밍 언어에 대한 지침서는 굉장히 많지만, 이보다 더 오래된 언어인 C 언어에 대한 도움말은 거의 없다. 『우아한 C 언어 코딩 패턴』은 대규모 프로그램의 설계 결정 시 참고할 수 있는 지침을 제공한다. 예제를 통해 이 지침들을 단계별로 조금씩 적용하는 방법을 익히고 실전에서 어떻게 활용할 것인가에 대한 감각을 쌓을 수 있다.
저자는 이 책을 통해 C 프로그램을 구조화하고, 오류에 대처하고, 유연한 인터페이스를 설계하는 방법에 대한 질문에 답한다. 특정 패턴을 찾고 있든 특정 주제에 대한 설계 결정에 필요한 개요를 찾고 있든 이 책이 그 길을 안내해 줄 것이다. 1부에서는 C 프로그래밍 언어에 특화된 실무 설계 지식을 구현하는 방법을 배운다. 2부에서는 C 프로그래밍 패턴을 적용하여 더 큰 프로그램을 구현한 사례를 소개한다. 좋은 설계 결정이라는 관점에서 패턴이 어떻게 개발자의 업무를 더 쉽게 만들어 주는지 배우게 될 것이다.
Contents
1부 C 패턴
1장 오류 처리
실행 예제
함수 분리
보호 구문
무사의 원칙
Goto 오류 처리
클린업 레코드
객체 기반 오류 처리
요약
더 읽을 거리
다음은...
2장 오류 정보 반환
실행 예제
상태 코드 반환
연관된 오류 반환
특수 반환 값
오류 기록
요약
더 읽을 거리
다음은...
3장 메모리 관리
동적 메모리의 데이터 저장 및 문제
실행 예제
스택 우선
영구적 메모리
클린업 지연
지정 소유권
할당 래퍼
포인터 검사
메모리 풀
요약
더 읽을 거리
다음은...
4장 C 함수에서의 데이터 반환
실행 예제
반환 값
아웃 파라미터
묶음 인스턴스
불변 인스턴스
호출자 소유 버퍼
피호출자 할당
요약
다음은...
5장 데이터 수명과 소유권
무상태 소프트웨어 모듈
전역 상태 소프트웨어 모듈
호출자 소유 인스턴스
공유 인스턴스
요약
더 읽을 거리
다음은...
6장 유연한 API
헤더 파일
핸들
동적 인터페이스
함수 제어
요약
더 읽을 거리
다음은...
7장 반복자 인터페이스
실행 예제
인덱스 접근
커서 반복자
콜백 반복자
요약
더 읽을 거리
다음은...
8장 모듈화 프로그램에서의 파일 구성
실행 예제
Include 보호
소프트웨어 모듈 디렉터리
전역 Include 디렉터리
자체 보유 컴포넌트
API 복제
요약
다음은...
9장 #ifdef 지옥 탈출
실행 예제
변형 회피
프리미티브 분리
원자 프리미티브
추상화 계층
변형 구현 분리
요약
더 읽을 거리
다음은...
2부 패턴 스토리
10장 로깅 기능 구현
패턴 스토리
파일 구성
중앙 로깅 함수
로깅 소스 필터
조건부 로깅
로깅 출력 대상 다양화
파일 로깅
크로스 플랫폼 파일
Logger 사용
요약
11장 사용자 관리 시스템 구축
패턴 스토리
데이터 구성
파일 구성
인증: 오류 처리
인증: 오류 로깅
사용자 추가: 오류 처리
반복
사용자 관리 시스템 사용
요약
12장 결론
여러분이 배운 것
더 읽을 거리
맺음말
Author
크리스토퍼 프레셰른,정기훈
오스트리아 그라츠 공과대학교에서 컴퓨터 공학 박사 학위를 취득했고 코딩과 품질에 대해 강의했다. ABB 사의 C 프로그래머로 근무하면서 강력한 코드를 작성하는 방법에 대해 실무 지식을 수집하고 문서화했다. 디자인 패턴 컨퍼런스와 패턴 작성 개선을 위한 이니셔티브를 조직하였다.
오스트리아 그라츠 공과대학교에서 컴퓨터 공학 박사 학위를 취득했고 코딩과 품질에 대해 강의했다. ABB 사의 C 프로그래머로 근무하면서 강력한 코드를 작성하는 방법에 대해 실무 지식을 수집하고 문서화했다. 디자인 패턴 컨퍼런스와 패턴 작성 개선을 위한 이니셔티브를 조직하였다.