logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

고성능을 위한 언어 C++

고성능을 위한 언어 C++

(이론과 C++17, 메모리 관리, 동시성, STL 알고리즘 모범 사례)

빅터 세르, 비요른 앤드리스트 (지은이), 최준 (옮긴이)
에이콘출판
35,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
31,500원 -10% 0원
1,750원
29,750원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

고성능을 위한 언어 C++
eBook 미리보기

책 정보

· 제목 : 고성능을 위한 언어 C++ (이론과 C++17, 메모리 관리, 동시성, STL 알고리즘 모범 사례)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > C++
· ISBN : 9791161753911
· 쪽수 : 456쪽
· 출판일 : 2020-01-31

책 소개

프로그래머라면 만들고자 하는 기능이 무엇이든지 간에 이 책에서 제시하는 더 빠르고 가벼운 프로그램 설계 방법을 항상 고려하는 것이 좋다. 성능의 여러 측면을 C++ 언어로 설명한 이론과 예제는 더 좋은 프로그램을 제작하는 데 유용한 배경지식이 될 것이다.

목차

1장. C++의 간단한 소개
__C++의 사용 이유
____비용이 들지 않는 추상화
____이식성
____견고성
____C++의 현재
__이 책의 목표
____독자에게 기대하는 지식
__다른 언어와 C++의 비교
____언어의 성능 경쟁
____성능과 관련 없는 C++ 언어의 기능
____객체 소유와 C++의 가비지 컬렉션
____C++ 참조를 사용한 널 객체 예방
____C++의 단점
__클래스 인터페이스와 예외 처리
____엄격한 클래스 인터페이스
____오류 처리와 자원 관리
__이 책에서 사용한 라이브러리
__요약


2장. 최신 C++ 개념
__auto 키워드를 사용한 자동 타입 추론
____함수 서명에서 auto 사용
____변수에서 auto 사용
__람다 함수
____C++ 람다 함수의 기본 구문
____캡처 블록
____람다와 std::function
____다형성 람다
__포인터에 대한 상수 전파
__이동 의미론 설명
____복사 생성, 교환, 이동
____자원의 획득과 3의 법칙
____이동 의미론 소개
____명명된 변수와 오른쪽 값
____기본 이동 의미론과 영의 법칙
__std::optional로 옵션 값 표현
____옵션 반환값
____옵션 멤버 변수
____정렬과 std::optional의 비교
__동적인 값을 std::any로 표현
____std::any의 성능
__요약


3장. 성능 측정
__점근적 복잡도와 빅 O 표기법
____증가율
____분할 상환 시간 복잡도
__측정 대상
____성능의 속성
____성능 테스트: 모범 사례
__코드의 이해와 핵심 지점
____프로파일러
__요약


4장. 데이터 구조
__컴퓨터 메모리의 속성
__STL 컨테이너
____시퀀스 컨테이너
____연관 컨테이너
____정렬된 집합과 맵
____비정렬 집합과 맵
____컨테이너 어댑터
__평행 배열
__요약


5장. 반복자
__반복자 개념
____반복자 분류
____포인터와 유사한 문법
____생성기로서의 반복자
____반복자 특성
____실용적인 예제: 범위 내의 부동소수점 포인트 값 반복 연산
__요약


6장. STL 알고리즘
__블록 구성을 위한 STL 알고리즘
____STL 알고리즘의 개념
____STL 알고리즘과 직접 만든 for 반복문의 비교
__STL과 범위 라이브러리의 미래
____STL 반복자의 제약 사항
____범위 라이브러리 소개
____액션, 뷰, 알고리즘
__요약


7장. 메모리 관리
__컴퓨터 메모리
____가상 주소 공간
____메모리 페이지
____스레싱
__프로세스 메모리
____스택 메모리
____힙 메모리
__메모리의 객체
____객체의 생성과 해제
____메모리 배치
____패딩
__메모리 소유권
____암시적 자원 관리
____컨테이너
____스마트 포인터
__작은 크기를 사용한 최적화
__사용자 정의 메모리 관리
____아레나 만들기
____사용자 정의 메모리 할당자
__요약


8장. 메타프로그래밍과 컴파일 시 평가
__템플릿 메타프로그래밍 소개
____템플릿 파라미터로 정수 사용
____컴파일러가 템플릿 함수를 처리하는 방법
____컴파일 시에 오류를 트리거하는 static_assert 사용
__타입 특성
____타입 특성 분류
____타입 특성 사용
____decltype을 사용한 변수 타입 가져오기
____std::enable_if_t를 사용해 타입에 따른 조건적 함수 활성화
____std::is_detected로 클래스 멤버 들여다보기
__constexpr 키워드
____런타임 구문의 constexpr 함수
____std::integral_constant를 사용한 컴파일 시 처리 과정의 검증
____if constexpr 구문
__다원화 컨테이너
____정적인 크기의 다원화 컨테이너
____동적 크기의 혼합 컨테이너
__std::variant
____variant에 접근
____variant의 다원화 컨테이너
____variant 컨테이너의 값에 접근
____std::get 전역 함수
__메타프로그래밍 실전 예제
____사례 1: 리플렉션
____전역 함수의 조건적 오버로딩
____사례 2: 안전한 포괄적 형 변환 함수 작성
____사례 3: 컴파일 시의 해시 문자열
__요약


9장. 프록시 객체와 지연 평가
__지연 평가와 프록시 객체의 소개
____지연 평가와 선행 평가의 비교
__프록시 객체
____프록시를 사용한 문자열 합치기 비교
____프록시 구현
____r-value 수정자
____합쳐진 프록시 할당
__거리 비교 시 제곱 계산의 보류
____간단한 2차원 지점 클래스
____수학적 배경
____DistProxy 객체 구현
____더 유용하도록 DistProxy 확장
____DistProxy를 사용한 거리 비교
____DistProxy로 거리 계산
____성능 평가
__연산자 오버로딩과 프록시 객체 생성
____확장 메서드로서의 파이프 연산자
____중위 연산자
____더 읽을거리
__요약


10장. 동시성
__동시성의 기본
__동시 프로그래밍이 어려운 이유
__동시성과 병렬성
____시분할
____공유 메모리
____데이터 경합
____뮤텍스
____교착 상태
____동기 작업과 비동기 작업
__C++ 동시 프로그래밍
____스레드 지원 라이브러리
____C++의 아토믹 지원
____C++ 메모리 모델
__잠금 없는 프로그래밍
____잠금 없는 큐의 예
__성능 가이드
____경합 방지
____대기 동작 방지
____스레드와 CPU 코어의 개수
____스레드 우선순위
____스레드 선호
____거짓 공유
__요약


11장. 병렬 STL
__병렬 처리의 중요성
__병렬 알고리즘
____병렬 std::transform() 구현
____병렬 std::count_if 구현
____병렬 std::copy_if 구현
__병렬 STL
____실행 정책
____병렬 버전으로 알고리즘 수정
____인덱스 기반의 for 반복문 병렬화
__GPU에서 STL 알고리즘 실행
____GPU API와 병렬 작업
____STL 알고리즘과 GPU
__부스트 컴퓨트
____부스트 컴퓨트 기본 개념
____OpenCL
____부스트 컴퓨트 초기화
____부스트 컴퓨트에 간단한 transform-reduce 알고리즘 전달
____부스트 컴퓨트에서 조건자 사용
____부스터 컴퓨트에서 사용자 정의 커널 사용
__요약

저자소개

빅터 세르 (지은이)    정보 더보기
토플로바(Toppluva)의 핵심 개발자로, 모바일 하드웨어를 대상으로 최적화된 그래픽 엔진을 담당하고 있다. C++를 사용한 실시간 그래픽, 음향, 구조적 설계 등을 위주로 전문적인 경험을 10년간 쌓았다. 경력을 기반으로 Mentice, Raysearch Laboratories에서 의료용 시각화 소프트웨어를 개발했고, Propellerhead 소프트웨어에서 실시간 오디오 애플리케이션을 개발했다. 린셰핑대학교(Linköping University)에서 미디어 과학 분야의 석사 학위를 받았다.
펼치기
비요른 앤드리스트 (지은이)    정보 더보기
현재 오디오 애플리케이션에 집중하고 있는 프리랜서 소프트웨어 컨설턴트다. 10년 이상 C++로 유닉스 서버 애플리케이션에서 데스크톱과 모바일용 실시간 오디오 애플리케이션에 이르는 프로젝트를 전문적으로 수행했다. 예전에는 알고리즘과 데이터 구조, 동시 처리 프로그램, 프로그래밍 방법론 등을 가르쳤다. 컴퓨터 공학 학사 학위와 KTH 왕립 기술연구소(Royal Institute of Technology)에서 컴퓨터 과학 분야 석사 학위를 받았다.
펼치기
최준 (옮긴이)    정보 더보기
기계공학을 전공했던 학창시절에 누구에게나 매력 덩어리였던 컴퓨터로 기계의 데이터를 처리하고 동작을 제어하는 과정에서 흥미를 갖게 돼 정보기술 분야에 뛰어들었다. 2001년부터 마이크로소프트 한국, 싱가폴 지사에서 근무하고 아시아 지역 200여 개의 글로벌 기업 현장에서 기술 지원을 수행하면서 다양한 기업용 IT 솔루션의 문제를 이해하고, 해결 방안을 찾는 소중한 경험을 갖게 됐다. 이후에는 여러 프로젝트에서 .NET 기반의 C# 개발자로서 상용 프로그램을 공급하는 즐거움도 누릴 수 있었다. 현재는 캐나다에 IT 컨설팅 회사를 설립하고, 기업 고객에게 필요한 소프트웨어 개발과 컨설팅 서비스를 제공하고 있다.
펼치기
이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책