스크랩

구간

C++로 시작하는 객체지향 프로그래밍

권기현 저 | ITC | 2008년 09월

C++로 시작하는 객체지향 프로그래밍

북트리

정가
$52.00
판매가
$28.60 (45%↓) 최저가 보상
적립금
$0.57 (2%P)

판매가 종료된 상품입니다.

북카트 바로구매 위시리스트

이책의 개정판 정보

C++로 시작하는 객체지향 프로그래밍 [제3판] Liang Y. Daniel 저 | ITC | 2016년 08월

평점 -  ·  리뷰 0

리뷰 쓰기

ISBN : 9788990758033 / 520쪽 210 x 280 (㎜)

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

  • 22,500
  • 22,500
  • 29,700
  • 26,100

책 소개

출판사 리뷰

베스트셀러 저술가이자 교수인 Y. Daniel Liang 박사의 탁월한 집필 능력과 전문지식을 바탕으로 탄생한 C++ 입문 교재!

이 책은 지금까지의 Liang 시리즈에서 검증된 ‘예제를 통해 설명하고 직접 작성해 보면서 배운다.’는 철학을 바탕으로 저술되었다. ‘기초가 최우선’이라는 원칙을 지키며, 예제를 통해 기본 특징을 설명하고, 학생들이 직접 작성해 보면서 배우도록 하고 있다.

분명하고 간결한 문체로 기초 논리와 기본적인 프로그래밍 기법을 설명하였고, 반복문, 단계적 상세화 등을 이해한 다음, 최종 목표인 객체지향 프로그래밍 능력을 습득할 수 있도록 하였다. C++에 대한 각각의 개념은 간단하면서도 간결한 예제를 통해 설명하였다. 각 장마다 이어지는 사례연구에서는 보다 긴 예제를 들어 문제 전반에 대해 이해를 높이고 이어서 각 줄마다 자세한 설명을 통해 프로그램을 자신의 것으로 소화할 수 있도록 하였다.

학생은 필수적이면서 중요한 기본 개념을 차근차근 배우면서 ‘느릿느릿 걸어도 황소걸음’이라는 말처럼 한 단계씩 나아가게 되며, 예외 처리나 I/O 같은 기법을 배우고, 나아가 궁극적으로는 객체지향 프로그래밍 방법을 사용하여 흥미로운 애플리케이션을 직접 개발할 수 있게 하였다. 책 전반에 걸친 예제와 연습문제는 문제해결 능력을 증진시키는 데 중점을 두고 있으며, 재사용 가능한 컴포넌트를 작성하고 여러 컴포넌트의 활용을 통해 실제적인 프로젝트를 작성할 수 있도록 한다.

이 책은 한 학기 분량으로 문제해결 능력을 배양하고 객체지향 프로그래밍 기법을 배우는 데 최적의 교재가 될 것이다.

주요 특징은 다음과 같다.
- 풍부한 테이블과 도표를 제시하고 있다.
- 초기 단계부터 프로그램 작성 도입 - 2장부터 짧고 흥미로운 게임 프로그램을 작성하게 된다.
- UML에 대해서도 설명하고 있다.
- 풍부한 강의자료 제공 - C++ 설치 및 구성, IDE 튜토리얼, 추가적인 C++ 특징들을 제공하여 강사의 수업 진행에 도움이 되도록 하였다.

[부록 설명]
CD-ROM 1매: Microsoft Visual C++ 2005 Express Edition

저자 소개

  • 저자 : 권기현
지은이 : Y. Daniel Liang (Liang, Y. Daniel)
2008년 현재 Prentice Hall의 Liang Java 시리즈의 저자이자 편집자로 전 세계적으로 인기를 얻는 Java 교재들을 저술하였다. 최근에는 그의 집필 능력을 컴퓨터 그래픽과 C++ 언어 분야로 확대하여 Java 교재 못지않은 집필력을 보인다. 미국 조지아주에 소재한 암스트롱 아틀란틱 주립대학의 컴퓨터 사이언스 학과 소프트웨어 공학 전공의 산학협력 교수이기도 하다. 오클로호마 대학에서 컴퓨터 사이언스 전공으로 박사학위를 수여받았다.  

옮긴이 : 권기현
1997년 초에 자바를 국내에 처음 소개하여 썬 교육센터에서 첫 강의를 시작한 이후로 언어의 우수성과 단순성에 매료되었으며, 자바 전문가란 말보다는 자바를 사랑하는 사람이란 말을 칭찬으로 여기고 있는 그야말로 자바매니아이다. 2008년 현재 현재 강원대학교 전자정보통신공학부 정보통신공학전공 교수로 재직중이다.
지은 책으로는
<소프트웨어 공학>
, <C 프로그래밍 이론과 실습>, <UNIX 활용>,
<자바2 프로그래밍>
, <RDB 설계를 통한 PHP 쇼핑몰 구축>등이 있다.  



옮긴이 : 김응성
현재 경기공업대학 컴퓨터정보시스템과 교수이다.  

역자 소개

  • 역자 :
권기현 anyjava@empal.com
        강원대학교 전자정보통신공학부 정보통신공학전공 교수

김응성 imagecap@kinst.ac.kr
        경기공업대학 컴퓨터정보시스템과 교수

목차

머리말 iii
역자 머리말 viii

Part 1 프로그래밍 기초

Chapter 1 컴퓨터, 프로그램 및 C++ 입문
1.1 들어가기 4
1.2 컴퓨터 구성 4
1.3 프로그램 8
1.4 운영체제 9
1.5 (선택) 수 체계 11
1.6 C++의 역사 14
1.7 간단한 C++ 프로그램 14
1.8 C++ 프로그램 개발 주기 16
1.9 Visual C++를 사용하여 C++ 프로그램 작성 18
1.10 Dev-C++를 사용하여 C++ 프로그램 개발 24
1.11 명령 창에서 C++ 프로그램 작성하기 28
1.12 UNIX에서 C++ 프로그램 작성 29

Chapter 2 원시 데이터 유형과 연산
2.1 들어가기 34
2.2 간단한 프로그램 작성 34
2.3 키보드에서 입력 값 읽기 36
2.4 std:: 접두어(prefix) 생략 37
2.5 식별자(Identifiers) 38
2.6 변수 39
2.7 대입문과 수식 40
2.8 상수 41
2.9 숫자 데이터 유형과 연산 42
2.10 수의 유형 변환 49
2.11 char 유형과 연산 51
2.12 실전 예제 53
2.13 프로그래밍 스타일 및 문서화 58
2.14 프로그래밍 오류 59
2.15 디버깅 60

Chapter 3 선택문
3.1 들어가기 68
3.2 bool 데이터 유형 68
3.3 if 문 69
3.4 예: 생일 맞추기 71
3.5 논리 연산자 73
3.6 if ... else 문 75
3.7 중첩 if 문 77
3.8 예제: 세금 계산 79
3.9 예제: 뺄셈 배우기 81
3.10 switch 문 83
3.11 조건식 85
3.12 출력 형식 지정 86
3.13 연산자 우선순위 및 결합성 89
3.14 나열형 90

Chapter 4 반복문
4.1 들어가기 100
4.2 while 문 100
4.3 do-while 문 104
4.4 for 문 105
4.5 어떤 반복문을 사용하는 것이 좋을까? 108
4.6 중첩 루프 109
4.7 실전 예제 110
4.8 (선택) break와 continue 키워드 116
4.9 예제: 소수 출력 117
4.10 (선택) 간단한 파일 입출력 119

Chapter 5 함수
5.1 들어가기 134
5.2 함수 작성 134
5.3 함수 호출 135
5.4 void 함수 137
5.5 값에 의한 전달 138
5.6 참조에 의한 전달 140
5.7 함수 오버로딩 143
5.8 함수 원형 145
5.9 기본 인수 146
5.10 실전 예제: 함수 이용 세금 계산 147
5.11 다른 프로그램에서 함수 재사용 149
5.12 실전 예제: 임의의 문자 생성 150
5.13 변수의 범위 153
5.14 수학 함수 156
5.15 함수 추상화와 단계적 상세화 157
5.16 (선택) 인라인 함수 164

Chapter 6 배열
6.1 들어가기 178
6.2 배열의 기초 178
6.3 함수로 배열 전달 185
6.4 함수로부터 배열 반환 188
6.5 배열 탐색 189
6.6 배열 정렬 192
6.7 2차원 배열 196
6.8 (선택) 다차원 배열 202

Chapter 7 포인터와 C-문자열
7.1 들어가기 216
7.2 포인터의 기초 216
7.3 포인터 참조에 의한 인수 전달 219
7.4 배열과 포인터 220
7.5 const와 포인터 222
7.6 함수에서 포인터 반환 223
7.7 동적 메모리 할당 225
7.8 실전 예제: 각 문자의 빈도 세기 226
7.9 문자와 문자열 229
7.10 실전 예제: 회문(回文) 검사 238

Chapter 8 재귀 호출
8.1 들어가기 248
8.2 예제: 계승 계산 248
8.3 예제: 피보나치 수 250
8.4 재귀 호출을 사용한 문제 해결 252
8.5 재귀 보조 함수 254
8.6 하노이 탑 257
8.7 재귀 호출과 반복 260

Part 2 객체지향 프로그래밍

Chapter 9 객체와 클래스
9.1 들어가기 270
9.2 객체를 위한 클래스 정의 270
9.3 생성자 272
9.4 객체 이름 272
9.5 클래스 선언과 구현 분리 276
9.6 포인터를 사용한 객체 멤버 접근 278
9.7 힙에서 동적 객체 생성 279
9.8 C++ string 클래스 279
9.9 데이터 필드 캡슐화 284
9.10 변수의 범위 286
9.11 this 포인터 288
9.12 함수로 객체 전달 289
9.13 객체의 배열 291
9.14 클래스 추상화와 캡슐화 293
9.15 실전 예제: Loan 클래스 294
9.16 생성자 초기화 목록 297

Chapter 10 객체와 클래스의 고급 기능
10.1 들어가기 308
10.2 불변 객체와 클래스 308
10.3 다중 선언 예방 310
10.4 인스턴스와 정적 멤버 312
10.5 소멸자 315
10.6 복사 생성자 317
10.7 복사 생성자 지정 320
10.8 프렌드 함수와 프렌드 클래스 322
10.9 객체 합성 324
10.10 실전 예제: Course 클래스 325
10.11 실전 예제: StackOfIntegers 클래스 328
10.12 C++ vector 클래스 330

Chapter 11 상속과 다형성
11.1 들어가기 340
11.2 기본 클래스와 파생 클래스 340
11.3 일반화 프로그래밍 346
11.4 생성자와 소멸자 346
11.5 함수 재정의 349
11.6 다형성과 가상 함수 350
11.7 보호(protected) 키워드 353
11.8 추상 클래스와 순수 가상 함수 354
11.9 동적 형변환 358

Chapter 12 파일 입력과 출력
12.1 들어가기 370
12.2 텍스트 입출력 370
12.3 출력 형식 지정 374
12.4 멤버 함수: getline, get, put 375
12.5 fstream과 파일 열기 모드 378
12.6 스트림 상태 테스트 379
12.7 이진 입출력 381
12.8 임의 접근 파일(random access file) 388
12.9 파일 갱신 391

Chapter 13 연산자 오버로딩
13.1 들어가기 398
13.2 Rational 클래스 398
13.3 연산자 함수 403
13.4 단축 연산자 오버로딩 405
13.5 [] 연산자 오버로딩 405
13.6 단항 연산자 오버로딩 407
13.7 ++와 -- 연산자 오버로딩 407
13.8 <
<와>
> 연산자 오버로딩 408

13.9 객체 변환 409

13.10 새로운 Rational 클래스 410

13.11 \u003d 연산자 오버로딩 417




Chapter 14 예외 처리

14.1 들어가기 422

14.2 예외 처리 개요 422

14.3 예외 처리의 이점 424

14.4 예외 클래스 425

14.5 사용자 예외 클래스 428

14.6 다중 예외 잡아내기 432

14.7 예외 전파 436

14.8 예외 중계 437

14.9 예외 지정 439

14.10 예외를 사용할 때 439




Chapter 15 템플릿

15.1 들어가기 446

15.2 템플릿의 기본 446

15.3 예제: 일반화 정렬(generic sort) 448

15.4 클래스 템플릿 450

15.5 Stack 클래스 개선 455




Chapter 16 연결 리스트, 스택, 큐

16.1 들어가기 462

16.2 노드 462

16.3 LinkedList 클래스 464

16.4 LinkedList 구현 466

16.5 다른 형태의 연결 리스트 476

16.6 LinkedList를 사용한 Stack 구현 477

16.7 큐 478 16.8 (선택) 반복자 480



Appendix A C++ 키워드 489

Appendix B ASCII 문자 490

Appendix C 연산자 우선순위 차트 492

Appendix D 비트 연산자 494



찾아보기 495

top