도서상세보기

도서명 Boost C++ 애플리케이션 개발 (부스트 라이브러리 예제를 활용한 쉽고 빠른 프로그램 개발
저자 안토니 폴루킨
출판사 에이콘
출판일 2019-11-12
정가 39,000원
ISBN 9791161753683
수량
# 차례 #
1장. 첫 애플리케이션 제작
소개
옵션 구성 알아내기
컨테이너나 변수에 아무 값이나 저장
컨테이너나 변수에 선택한 여러 가지 형식 저장
여러 형식을 저장하는 컨테이너 안전하게 사용
실제 값 없이 값이나 플래그 반환
함수에서 배열 반환
여러 값을 하나로 연결
함수의 파라미터 값 묶기와 재정렬
사람이 읽기 편한 형식 이름 알아내기
C++11 이동 에뮬레이션 사용
복사할 수 없는 클래스 생성
복사할 수는 없지만 이동은 할 수 있는 클래스 생성
C++14와 C++11 알고리즘 사용

2장. 자원 관리
소개
영역을 벗어나지 않는 클래스에 대한 지역 포인터 관리
함수를 통해 접근하는 클래스에 대한 포인터의 참조 횟수 관리
영역을 벗어나지 않는 배열에 대한 포인터 관리
함수를 통해 접근하는 배열에 대한 포인터의 참조 횟수 관리
변수에 아무 함수 객체나 저장
변수에 함수 포인터 전달
변수에 C++11 람다 함수 전달
포인터 컨테이너
영역을 벗어날 때의 처리
파생 클래스의 멤버로 기본 클래스 초기화

3장. 데이터 변환
소개
문자열에서 숫자로 변환
숫자에서 문자열로 변환
숫자에서 숫자로 변환
사용자 정의 형식과 문자열 간 변환
스마트 포인터 변환
다형적 객체의 형 변환
간단한 입력 파싱
복잡한 입력 파싱

4장. 컴파일 시간 트릭
소개
컴파일할 때 크기 검사
정수 형식에 대해 함수 템플릿 사용하게 만들기
실수 형식에 대해 함수 템플릿 사용 못하게 만들기
숫자에서 형식 만들기
형식 특질 구현
템플릿 파라미터에 맞춰 최적인 연산자 선택
에서 C++03 표현식의 형식 알아내기

5장. 다중 스레드
소개
실행 스레드 생성
공통 자원에 대한 접근 동기화
원자 연산으로 공통 자원에 빠르게 접근
work_queue 클래스 생성
다중-읽기-단일-쓰기 잠금
스레드가 개별적으로 갖는 변수 생성
스레드 인터럽트
스레드 그룹 다루기
공유 변수의 안전한 초기화
여러 뮤텍스 잠그
이 책에서 다루는 내용
■ 매일 사용하기 좋은 새로운 데이터 형식에 익숙해지기
■ 자원을 잘 관리하기 위한 스마트 포인터 사용
■ 컴파일 시간 계산과 단언문 이해
■ 부스트 라이브러리로 다중 스레드 작성
■ 여러 작업을 동시에 실행하는 방법
■ 부스트 라이브러리를 사용한 일반 문자열 작업
■ 프로세스, 계산, 상호 작용을 작업으로 나눈 후 독립적으로 처리하기
■ 그래프, 스택 트레이스, 테스트와 프로세스 간 통신 기초
■ 컴파일러, 플랫폼, 부스트 버전을 알아내는 다양한 도우미 매크로 알아보기

이 책의 구성
1장, ‘첫 애플리케이션 제작’에서는 일상적으로 쓰는 라이브러리를 알아본다. 다양한 곳에서 옵션 구성을 알아내고, 부스트 라이브러리를 만든 사람이 도입한 형식으로 무엇을 만들 수 있는지 살펴본다.
2장, ‘자원 관리’에서는 부스트 라이브러리에서 도입한 데이터 형식 중에서 포인터와 함께 사용하는 방법을 알아본다. 자원을 쉽게 관리하는 방법과 어떤 함수 객체, 함수 람다 표현식이라도 저장할 수 있는 데이터 형식을 사용하는 방법을 알아본다. 2장을 읽고 나면 좀 더 믿음직한 코드를 작성할 수 있으며, 더 이상 메모리 누수현상도 없을 것이다.
3장, ‘데이터 변환’에서는 문자열, 숫자와 사용자 정의 형식들을 서로 간에 어떻게 변환할 수 있는지 알아본다. 다형적 형식을 안전하게 형 변환하는 방법과 C++ 소스 파일 안에 작거나 큰 파서를 만들어 넣는 방법도 설명한다. 자주 혹은 드물게 사용하는 여러 가지 데이터 변환 방식도 알아본다.
4장, ‘컴파일 시간 트릭’에서는 컴파일 시간 검사와 알고리즘 성능 개선뿐 아니라 다른 메타프로그래밍 작업에 부스트 라이브러리를 사용하는 방법을 간단한 예제를 통해 알아본다. 4장을 이해하지 않고 부스트 소스코드나 다른 부스트와 유사한 라이브러리를 이해하기는 어려울 것이다.
5장, ‘다중 스레드’에서는 스레드의 모든 것을 다룬다.
6장, ‘작업 다루기’에서는 함수 객체를 작업으로 호출하는 방법을 알아본다