Effective Modern C++(이펙티브 모던 C++) (C++11과 C++14를 효과적으로 사용하는 42가지 방법)

Effective Modern C++(이펙티브 모던 C++) (C++11과 C++14를 효과적으로 사용하는 42가지 방법)

$28.30
Description
[Effective Modern C++(이펙티브 모던 C++)]은 C++11과 C++14를 이용해서, 즉 현대적인 C++을 이용해서 진정으로 훌륭한 소프트웨어를 작성하는 방법을 설명한다. 책에서는 중괄호 초기치, noexcept 명세, 완벽 전달, 똑똑한 포인터 생성 함수의 장단점, std::move와 std::forward, 오른값 참조, 보편 참조 사이의 관계, 명확하고 정확하며 효과적인 람다 표현식을 작성하는 기법들, std::atomic과 volatile의 차이와 각각의 사용법 및 C++ 동시성 API와의 관계, ‘구식’ C++(즉 C++98) 프로그래밍에서의 모범 관행 중 현대적인 C++ 소프트웨어 개발에 맞게 고쳐야 할 것들에 대해 다루고 있다.
저자

스콧마이어스

저자스콧마이어스(ScottMeyers)는C++에관한세계최고전문가중한명이다.인기있는강사이자자문가,콘퍼런스강연자인그의EffectiveC++시리즈(EffectiveC++,MoreEffectiveC++,EffectiveSTL)는20년이상C++프로그래밍지침의기준을확립했다.그는BrownUniversity에서컴퓨터과학Ph.D.학위를받았다.그의웹사이트는aristeia.com이다.

목차

목차
1장형식연역
항목1:템플릿형식연역규칙을숙지하라
항목2:auto의형식연역규칙을숙지하라
항목3:decltype의작동방식을숙지하라
항목4:연역된형식을파악하는방법을알아두라
2장auto
항목5:명시적형식선언보다는auto를선호하라
항목6:auto가원치않은형식으로연역될때에는명시적형식의초기치를사용하라
3장현대적C++에적응하기
항목7:객체생성시괄호(())와중괄호({})를구분하라
항목8:0과NULL보다nullptr를선호하라
항목9:typedef보다별칭선언을선호하라
항목10:범위없는enum보다범위있는enum을선호하라
항목11:정의되지않은비공개함수보다삭제된함수를선호하라
항목12:재정의함수들을override로선언하라
항목13:iterator보다const_iterator를선호하라
항목14:예외를방출하지않을함수는noexcept로선언하라
항목15:가능하면항상constexpr을사용하라
항목16:const멤버함수를스레드에안전하게작성하라
항목17:특수멤버함수들의자동작성조건을숙지하라
4장똑똑한포인터
항목18:소유권독점자원의관리에는std::unique_ptr를사용하라
항목19:소유권공유자원의관리에는std::shared_ptr를사용하라
항목20:std::shared_ptr처럼작동하되대상을잃을수도있는포인터가필요하면std::weak_ptr를사용하라
항목21:new를직접사용하는것보다std::make_unique와std::make_shared를선호하라
항목22:Pimpl관용구를사용할때에는특수멤버함수들을구현파일에서정의하라
5장오른값참조,이동의미론,완벽전달
항목23:std::move와std::forward를숙지하라
항목24:보편참조와오른값참조를구별하라
항목25:오른값참조에는std::move를,보편참조에는std::forward를사용하라
항목26:보편참조에대한중복적재를피하라
항목27:보편참조에대한중복적재대신사용할수있는기법들을알아두라
항목28:참조축약을숙지하라
항목29:이동연산이존재하지않고,저렴하지않고,적용되지않는다고가정하라
항목30:완벽전달이실패하는경우들을잘알아두라
6장람다표현식
항목31:기본갈무리모드를피하라
항목32:객체를클로저안으로이동하려면초기화갈무리를사용하라
항목33:std::forward를통해서전달할auto&&매개변수에는decltype을사용하라
항목34:std::bind보다람다를선호하라
7장동시성API
항목35:스레드기반프로그래밍보다과제기반프로그래밍을선호하라
항목36:비동기성이필수일때에는std::launch::async를지정하라
항목37:std::thread들을모든경로에서합류불가능하게만들어라
항목38:스레드핸들소멸자들의다양한행동방식을주의하라
항목39:단발성사건통신에는void미래객체를고려하라
항목40:동시성에는std::atomic을사용하고,volatile은특별한메모리에사용하라
8장다듬기
항목41:이동이저렴하고항상복사되는복사가능매개변수에대해서는값전달을고려하라
항목42:삽입대신생성삽입을고려하라

출판사 서평

출판사서평
C++11과C++14에숙달하려면새로추가된기능들(이를테면auto형식선언,이동의미론,람다표현식,동시성지원등)에익숙해지는것으로는부족하다.사실어려운것은그런기능들을효과적으로사용하는방법,다시말해서그런기능들을정확하고,효율적이고,유지보수하기좋고,이식성을갖춘소프트웨어를만드는데활용하는방법을배우는것이다.이책은C++11과C++14를이용해서,즉현대적인C++을이용해서진정으로훌륭한소프트웨어를작성하는방법을설명한다.
EffectiveModernC++은스...
C++11과C++14에숙달하려면새로추가된기능들(이를테면auto형식선언,이동의미론,람다표현식,동시성지원등)에익숙해지는것으로는부족하다.사실어려운것은그런기능들을효과적으로사용하는방법,다시말해서그런기능들을정확하고,효율적이고,유지보수하기좋고,이식성을갖춘소프트웨어를만드는데활용하는방법을배우는것이다.이책은C++11과C++14를이용해서,즉현대적인C++을이용해서진정으로훌륭한소프트웨어를작성하는방법을설명한다.
EffectiveModernC++은스콧마이어스의이전책들에서검증된지침기반,예제주도적형식을따르되,완전히새로운내용을다룬다.이책은모든현대적C++소프트웨어개발자가반드시읽어야할책이다.
《이책에서다루는내용》
ㆍ중괄호초기치,noexcept명세,완벽전달,똑똑한포인터생성함수의장단점
ㆍstd::move와std::forward,오른값참조,보편참조사이의관계
ㆍ명확하고정확하며효과적인람다표현식을작성하는기법들
ㆍstd::atomic과volatile의차이와각각의사용법및C++동시성API와의관계
ㆍ‘구식’C++(즉C++98)프로그래밍에서의모범관행중현대적인C++소프트웨어개발에맞게고쳐야할것들