메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

Advanced C++: 스타일과 구문을 활용한 예술적 프로그래밍

Advanced C++: 스타일과 구문을 활용한 예술적 프로그래밍

한빛미디어

번역서

절판

  • 저자 : 제임스 코플리엔
  • 번역 : 이영미 역 , 이해영 감수
  • 출간 : 2003-09-05
  • 페이지 : 664 쪽
  • ISBN : 8979142463
  • 물류코드 :1246
  • 초급 초중급 중급 중고급 고급
3점 (1명)
좋아요 : 14

설계를 고려하지 않고도
프로그램을 잘 짜왔던 사람들도 경악하는 기발한 테크닉

영어 문법만 안다고 회화가 되지 않듯이, 프로그래밍 언어 문법만으로도 우리의 생각을 어느 정도 표현할 수 있지만 실질적으로 프로그래밍하기는 어렵다. 프로그램과 시스템 구조를 좌우하는 핵심은 바로 설계이기 때문이다. 이 책에서는 "C++ 언어는 이렇게 써야 한다"라는 주제를 바탕으로 C++다운 설계와 구현을 위한 C++ 언어의 스타일과 관형구를 알아본다. 설계를 고려하지 않고도 프로그램을 잘 짜왔던 사람도 C++ 언어에서 기대하기 힘들었던 온갖 아이디어, 트릭, 테크닉을 모두 다루는 저자의 순발력에 압도될 것이다. 또한 번역서만 따로 추가된 연습문제에 대한 힌트와 해답은 스스로를 테스트해볼 수 있는 좋은 기회가 될 것이다.


[ 이 책의 주요 내용 ]
  • C++ 기법을 활용하는 과정에서 생기는 이익과 잠재적인 함정
  • 작지만 풍부한 예제를 활용해 C++ 언어의 특징을 가장 효과적으로 결합하는 방법
  • 재사용을 지원하기 위해 템플릿을 활용하는 방법
  • 라이브러리 설계, 예외 처리, 분산 처리와 같은 대규모 시스템 개발에서 고려할 사항
  • 스스로를 테스트해볼 수 있는 연습문제, 힌트와 해답
[ 미디어서평: 아마존 서평 ]

이해하기 쉬운 패턴 입문
이 책은 지금 시점에서 꽤 오래되었다. 하지만 책에서 다루는 내용이 언어 레퍼런스를 목표로 하지 않았기에 나이를 먹지 않는다.
이 책은 언어 기본과 관련하여 몇 가지 금언으로 시작하는데, 예를 들어 상속과 다형성에 대해 아주 충분한 시간을 보내면서 쟁점의 핵심을 얻어내도록 한다. 초반부에는 단순한 관용구 예제를 몇 가지 소개한다(가상 생성자, 참조 횟수, 핸들-바디), 그리고 나서 다중 디스패치를 포함해 더 고급 주제로 넘어가며, 여태껏 보았던 책 중에서 프로토타이핑 패턴("exemplar")에 대해 가장 잘 설명하고 있다.
"패턴 위주 프로그래밍"을 위한 길을 찾고 있으며, "디자인 패턴" 책이 너무나도 어렵게 다가온다면, 이 책이 몇몇 구체적인 예제로 바로 시작할 수 있도록 당신을 이끌 것이다.
─ 미국 뉴저지 도노반 레비키
정신적인 충격
이 책은 C++로 결코 할 수 없다고 생각한 분야로 독자를 안내한다. 비록 몇몇 관용구는 낡았지만(이 책은 RTTI와 STL을 표준에 추가하기 전에 쓰였다), 그럼에도 불구하고 생각을 불러 일으키는 매우 값어치 있는 책이다.
실제로(!) 표현한 많은 아이디어는 독자들이 정말 완벽하게 이해하기에 앞서 고민하고 씨름해야 하는 과제를 안겨준다. 중/고급 C++ 프로그래머라면 누구나 읽어야 할 필독서이다. 책을 다 읽고 나면, C++의 위력을 훨씬 더 잘 완벽하게 느끼게 될 것이다.
─ 미국에서 익명 독자
제임스 코플리엔 저자

제임스 코플리엔

위스콘신 대학교에서 전자·컴퓨터 공학 학사 학위와 컴퓨터 과학 석사 학위를 받았다. AT&T 벨연구소에 속한 소프트웨어 생산 연구 부서에 근무하고 있으며, 초기부터 C++ 프로그래밍 언어와 씨름하고 있다. 최근에는 개발 환경, 전달 플랫폼, 대규모 객체지향 시스템을 위한 디버거에 작업 초점을 맞추고 있다. 그리고 대규모 프로젝트에 객체지향 기법을 소개하기 위해, 이를 도와주는 상담자로 활동 중이다.


이영미 역자

이영미

포항공대 수학과 학부를 나왔다. 대규모 SI 업체에서 ERP 관련 프로젝트를 진행했고, 벤처 회사에서 교육 정보화 시스템을 개발했었으며, 또 다른 벤처 회사에서 시스템 관리와 임베디드 리눅스 관련 프로젝트를 진행했다. 최근에는 인생 경로를 바꿔서 컴퓨터와 전혀 상관없는 대학원에 입학했음에도 불구하고, 여전히 컴퓨터에 대한 미련을 버리지 못하고 다양한 실험을 하고 있다. 역서로는 『삼바 활용하기』,『네트워크 프린팅』(이상 한빛미디어)이 있다.
이해영 역자

이해영

포항공대 컴퓨터 공학과와 퍼듀 전자계산학과를 나왔다. 지나치게 세분화된 전문 소프트웨어 개발회사에서 시작하여 개발자 각자가 슈퍼맨이 되어야 하는 작은 벤처 기업, 기술적인 결정을 조직적인 이유로 내리는 대기업에 이르기까지 두루 거친 후, 현재는 프리랜서로 미국에서 활동 중이다. 역서로는『Rapid Development: 쾌속 개발 전략』(한빛미디어)이 있다.

1. 개요
     1.1 C++: 진화하는 언어
     1.2 관용구와 함께 복잡성 풀기
     1.3 1990년대를 위한 객체
     1.4 설계와 언어

2. 자료 추상화와 추상 자료 타입
     2.1 클래스
     2.2 객체 전환
     2.3 생성자와 소멸자
     2.4 인라인 함수
     2.5 정적 자료 멤버 초기화
     2.6 정적 멤버 함수
     2.7 영역 지정하기와 const
     2.8 전역 객체, 상수, 정적 클래스 멤버 초기화 순서
     2.9 클래스 객체 멤버 함수를 위한 const 강제 사용
     2.10 멤버 함수에 대한 포인터
     2.11 프로그램 구성 규약

3. 구체적 자료 타입
     3.1 정규 표준 클래스 폼
     3.2 영역 지정과 접근 통제
     3.3 오버로딩: 연산자와 함수 의미 재정의
     3.4 타입 변환
     3.5 참조 횟수: 변수의 ‘마법 메모리’ 사용하기
     3.6 연산자 new와 delete
     3.7 초기화와 인스턴스화 분리하기

4. 상속
     4.1 단순 상속
     4.3 생성자와 소멸자
     4.4 클래스 포인터 변환
     4.5 타입 선택자 필드

5. 객체지향 프로그래밍
     5.1 C++ 실행 시간 타입 지원: 가상 함수
     5.2 소멸자 상호 작용과 가상 소멸자
     5.3 가상 함수와 영역 지정
     5.4 순수 가상 함수와 추상 기초 클래스
     5.5 봉투와 편지 클래스
     5.6 기능자: 객체인 함수
     5.7 다중 상속
     5.8 상속 표준 폼
        큐 반복자 예제
        은행 업무 응용 프로그램 클래스

6. 객체지향 설계
     6.1 타입과 클래스
     6.2 객체지향 설계의 대활약
     6.3 객체지향 분석과 영역 분석
     6.4 객체와 클래스 관계
     6.5 특수 타입, 상속, 전달
     6.6 특수 타입, 상속, 독립성에 관한 주요 규칙

7. 재사용과 객체
     7.1 모든 유추는 어디서든 무너지기 마련이다
     7.2 설계 재사용
     7.3 코드 재사용 기법 4가지
     7.4 매개변수화된 타입 또는 템플릿
     7.5 비공개 상속: 상속이 재사용을 지원하는가
     7.6 저장 장소 재사용
     7.7 인터페이스 재사용: 변형
     7.8 재사용, 상속, 전달
     7.9 원시 코드 재사용을 위한 구조적 대안
     7.10 재사용과 객체에 대한 일반화

8. Exemplar 프로그래밍
     8.1 예제: 고용인 Exemplar
     8.2 Exemplar와 일반 생성자: Exemplar 공동체 관용구
     8.3 자발적인 일반 생성자
     8.4 추상 기초 Exemplar
     8.5 프레임 Exemplar 관용구 지향
     8.6 기호에 관해 한마디
     8.7 Exemplar와 프로그램 관리
        Exemplar-Based Simple Parser
        Frame-Based Exemplars

9. 기호적 언어 스타일 흉내내기
     9.1 점진적 C++ 개발
     9.2 기호 표준 폼
     9.3 예제: 일반 컬렉션 클래스
     9.4 점진적 적재를 위한 코드와 관용구
     9.5 가비지 컬렉션
     9.6 기초 타입 캡슐화
     9.7 기호적 관용구에 의존하는 다중 메소드

10. 동적 다중 상속
     10.1 예제: 다중 기술 윈도우 시스템
     10.2 주의할 점

11. 시스템 쟁점
     11.1 정적 시스템 설계
     11.2 동적 시스템 설계

A. C++가 바라본 C
     A.1 함수 호출
     A.2 함수 매개변수
     A.3 함수 원형
     A.4 참조에 따른 호출 매개변수
     A.5 매개변수를 위한 가변적 변수 숫자
     A.6 함수 포인터
     A.7 const 타입 변경자
     A.8 C 코드와 인터페이스 방안

B. 모양 프로그램: C++

C. 연산자에서 받은 참조 반환값

D. 비트단위 복사가 왜 안 될까
     D.1 왜 멤버 대 멤버 복사가 만병통치약이 아닐까

E. 기호적인 도형

F. 블록 구조 프로그래밍
     F.1 블록 구조 프로그래밍이란
     F.2 조직적 C++ 프로그래밍을 위한 기초 건축 벽돌
     F.3 깊이 중첩된 영역을 위한 대안
     F.4 구현 시 고려사항
        블록 구조 비디오게임 코드

G. C++를 사용한 리눅스와 윈도우에서 클래스 동적 적재
     G.1 기본 원리
     G.2 dlopen API와 관련한 문제 해결 방법
     G.3 예제 소개
     G.4. 고급 기법1: ‘동적 C++ 클래스’ 라이브러리
     G.5. 고급 기법2: ‘동적 C++ 클래스’ 라이브러리

H-1. 연습문제 힌트
H-2. 연습문제 해답

기본적인 C++ 서적이 아닌 중고급서라서인지 중요한 요소요소를 잘 지적하고 있다. "정말 C++의 한계가 어디일까"이 한마디로 이 책을 표현할 수 있을 거라 생각한다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
Advanced C++: 스타일과 구문을 활용한 예술적 프로그래밍
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
Advanced C++: 스타일과 구문을 활용한 예술적 프로그래밍
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
Advanced C++: 스타일과 구문을 활용한 예술적 프로그래밍
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실