품목정보
발행일 | 2010년 05월 12일 |
---|---|
쪽수, 무게, 크기 | 656쪽 | 1586g | 188*254*35mm |
ISBN13 | 9788996094043 |
ISBN10 | 8996094048 |
발행일 | 2010년 05월 12일 |
---|---|
쪽수, 무게, 크기 | 656쪽 | 1586g | 188*254*35mm |
ISBN13 | 9788996094043 |
ISBN10 | 8996094048 |
ETS 토익 정기시험 기출문제집 1000 Vol.3 READING 리딩
16,020원 (10%)
ETS 토익 정기시험 기출문제집 1000 Vol.3 LISTENING 리스닝
16,020원 (10%)
2023 큰별쌤 최태성의 별별한국사 한국사능력검정시험 심화(1,2,3급) 상
13,950원 (10%)
2023 큰별쌤 최태성의 별별한국사 한국사능력검정시험 심화(1,2,3급) 하
13,500원 (10%)
Part 01 C++로의 전환 Chapter 01 C언어 기반의 C++ 1 01-1 printf와 scanf를 대신하는 입출력 방식 01-2 함수 오버로딩(Function Overloading) 01-3 매개변수의 디폴트 값(Default Value) 01-4 인라인(inline) 함수 01-5 이름공간(namespace)에 대한 소개 01-6 OOP 단계별 프로젝트 01단계 01 프로그래밍 문제의 답안 Chapter 02 C언어 기반의 C++ 2 02-1 Chapter 02의 시작에 앞서 02-2 새로운 자료형 bool 02-3 참조자(Reference)의 이해 02-4 참조자(Reference)와 함수 02-5 malloc & free를 대신하는 new & delete 02-6 C++에서 C언어의 표준함수 호출하기 02 프로그래밍 문제의 답안 Part 02 객체지향의 도입 Chapter 03 클래스의 기본 03-1 C++에서의 구조체 03-2 클래스(Class)와 객체(Object) 03-3 객체지향 프로그래밍의 이해 03 프로그래밍 문제의 답안 Chapter 04 클래스의 완성 04-1 정보은닉(Information Hiding) 04-2 캡슐화(Encapsulation) 04-3 생성자(Constructor)와 소멸자(Destructor) 04-4 클래스와 배열 그리고 this 포인터 04-5 OOP 단계별 프로젝트 02단계 04 프로그래밍 문제의 답안 Chapter 05 복사 생성자(Copy Constructor) 05-1 '복사 생성자'와의 첫 만남 05-2 '깊은 복사'와 '얕은 복사' 05-3 복사 생성자의 호출시점 05-4 OOP 단계별 프로젝트 03단계 05 프로그래밍 문제의 답안 Chapter 06 friend와 static 그리고 const 06-1 const와 관련해서 아직 못다한 이야기 06-2 클래스와 함수에 대한 friend 선언 06-3 C++에서의 static 06-4 OOP 단계별 프로젝트 04단계 Part 03 객체지향의 전개 Chapter 07 상속(Inheritance)의 이해 07-1 상속에 들어가기에 앞서 07-2 상속의 문법적인 이해 07-3 protected 선언과 세 가지 형태의 상속 07-4 상속을 위한 조건 07-5 OOP 단계별 프로젝트 05단계 07 프로그래밍 문제의 답안 Chapter 08 상속과 다형성 08-1 객체 포인터의 참조관계 08-2 가상함수(Virtual Function) 08-3 가상 소멸자와 참조자의 참조 가능성 08-4 OOP 단계별 프로젝트 06단계 08 프로그래밍 문제의 답안 Chapter 09 가상(Virtual)의 원리와 다중상속 09-1 멤버함수와 가상함수의 동작원리 09-2 다중상속(Multiple Inheritance)에 대한 이해 09-3 OOP 단계별 프로젝트 07단계 Part 04 객체지향의 완성 Chapter 10 연산자 오버로딩 1 10-1 연산자 오버로딩의 이해와 유형 10-2 단항 연산자의 오버로딩 10-3 교환법칙 문제의 해결 10-4 cout, cin 그리고 endl의 정체 10 프로그래밍 문제의 답안 Chapter 11 연산자 오버로딩 2 11-1 반드시 해야 하는 대입 연산자의 오버로딩 11-2 배열의 인덱스 연산자 오버로딩 11-3 그 이외의 연산자 오버로딩 11-4 OOP 단계별 프로젝트 08단계 11 프로그래밍 문제의 답안 Chapter 12 String 클래스의 디자인 12-1 C++의 표준과 표준 string 클래스 12-2 문자열 처리 클래스의 정의 12-3 OOP 단계별 프로젝트 09단계 Chapter 13 템플릿(Template) 1 13-1 템플릿(Template)에 대한 이해와 함수 템플릿 13-2 클래스 템플릿(Class Template) 13-3 OOP 단계별 프로젝트 10단계 13 프로그래밍 문제의 답안 Chapter 14 템플릿(Template) 2 14-1 Chapter 13에서 공부한 내용의 확장 14-2 클래스 템플릿의 특수화(Class Template Specialization) 14-3 템플릿 인자 14-4 템플릿과 static Chapter 15 예외처리(Exception Handling) 15-1 예외상황과 예외처리의 이해 15-2 C++의 예외처리 메커니즘 15-3 Stack Unwinding(스택 풀기) 15-4 예외상황을 표현하는 예외 클래스의 설계 15-5 예외처리와 관련된 또 다른 특성들 15-6 OOP 단계별 프로젝트 11단계 Chapter 16 C++의 형 변환 연산자와 맺는 글 16-1 C++에서의 형 변환 연산 16-2 '윤성우의 열혈 C++ 프로그래밍'을 맺는 글 |
강의에 필요해서 오랜만에 C++책을 찾아보니 이게 평이 워낙 좋아서 구해보았는데, 많이 실망스럽습니다. 처음 접하는 사람들에게는 이해가 잘 갈지는 모르겠으나 많은 중요한 내용을 놓치고 있고, 다소는 틀리게 설명하고 있고, 긍극적으로 '왜'라는 질문에 대한 대답은 못해주는 내용이네요.
가장 좋은 부분은 interface 상속 부분인데, 예전에는 이부분을 제대로 설명하는 책들이 없어서 (국내서는 물론이고 원서들도 아주 개판이었죠.) 문제였는데 깔끔하게 설명은 해놓으셨습니다만, 이렇게 하면 왜 더 좋다는 얘기는 너무 부족한거 같습니다. 하지만 이건 책이 더 두꺼워져야 하니 이해할 수 있습니다.
그런데, 기초적인 부분에서 예를 들어 참조자는 '왜' 필요해졌는지, 함수 오버로딩을 하게 되어서 생기는 문제점과 C랑 섞어 쓰는 방법이라든가, mutable이나 explicit등의 keyword 설명시 적절한 예제라든가, 더 근본적으로, 왜 private 을 사용해야 하는지에 대한 대답이라든가, initializer list가 '왜' 필요한지라든가, 또 namespace나 exception handling이 기존 방법에 대비해서 '왜' 더 좋은지라든가 friend가 '왜' 필요한지에 대한 제대로 된 답이라든가 참 많은 부분이 실망스럽게 보였습니다.
현실에서는 별로 필요도 없는 복사 생성자에 대한 긴 언급등 불필요한 긴 내용도 조금은 걸리더군요. const 는 중요하나 좀 더 필요한 것만 강조를 해주는게 더 좋을 것도 같고요.
이 정도 내용으로 인기가 높다는 것이 화가 나서 내가 직접 하나 쓸까 생각까지 하였는데... 'ㅎㅈ ㅇㄱㅎㄴ C/C++' 책을 보니 이건 괜찮더군요.
대학때 컴퓨터공학을 전공하여 지금껏 IT관련 업무를 해오던 사람으로서 윤성우 님의 열혈강의 C++ 개정판이 나왔다고 해서 복습차원으로 구매를 하게 되었습니다.
항상 느끼는 것이지만 윤성우 님의 책 스타일은 단순히 외워라가 아닌 왜 이것이 문제가 되는지, 왜 이렇게 해야 되는지에 대한 이해를 중심으로 설명을 진행한다는 특징이 있습니다. 그래서인지 몰라도 윤성우님의 책을 읽다보면 평소에 왜 그런지 모르고 무작정 외웠던 부분을 속쉬원히 긁어주는 느낌이 듭니다.
그리고 밑에 보니까 누가 엄청난 악플을 달아놨더군요. 서평이 정직하지 못하다고, 서평이벤트를 한 출판사와 참여한 사람들은 반성하라는 내용의 악플을 봤는데요....
글쎄요.... 제 생각으로는...책 하나만 놓고 보면 더할나위없이 좋은 책입니다. 국내에서 출판되고 있는 C++책중에서 가장 많이 판매되고있는 책이며 C++개발자들이라면 누구나 한 권씩 꼭 가지고 있는 책입니다.
따라서 저는 강력하게 이책을 추천합니다. C언어를 공부하고 나서 C++언어를 공부하고자 하는 학생들이라면 이책을 선택하십시요.
분명 "굿초이스~~~" 라고 만족하실겁니다.
솔직히 제 개인적으로는 국내에서 출판되는 컴퓨터 서적 중에 추천할 만한 서적은 극히 드물다고 생각됩니다. 외국서적을 번역한 번역서의 경우, 무슨 말인지 이해하기 어렵게 번역된, 어색한 문장의 책들이 많습니다. 이런 책들은 차라리 원서를 그냥 읽는 게 속 편할 정도입니다. 국내 저자가 직접 쓴 책 중에도 선뜻 추천할 만한 책은 별로 없습니다. 날림으로 쓴 책이 많고, 그냥 이것저것 짜집기 형식으로 쓴 것도 많습니다. 컴퓨터 실력과 좋은 책을 쓰는 능력이 반드시 일치하지는 않는 것 같습니다. 경력도 화려하고 실력도 뛰어난 사람이 쓴 책이라고 해서 읽어봤는데, 무슨 소리를 하는 건지 알아보기 힘들게 쓴 것도 많습니다. 물론 그런 책들로 공부를 해도 공부가 되기는 하지만, 효과도 떨어지고, 짜증나고, 뭐가 뭔지 헷갈리게 되기 십상입니다.
그런 와중에 여기 정말로 추천 받아 마땅한 책이 있습니다.
이 책은 국내 최고의 C/C++ 서적 저자인 윤성우님이 쓰신 책입니다. 윤성우님은 C/C++ 서적에서 일종의 신드롬을 일으키신 분으로, 국내에서는 굉장히 보기 드물게 C/C++ 서적으로 인한 팬들을 보유하고 있습니다. 윤성우님의 책은 무조건 구입하는 매니아층이 형성되기도 했는데, 저도 윤성우님의 팬 중 한명으로 윤성우님 책을 여러 권 가지고 있습니다.
사람들이 윤성우님의 책을 좋아하는 이유는 여러 가지가 있습니다. 우선 책의 내용이 재미있습니다. 흔히 컴퓨터 서적은 딱딱하고 읽기 어려울 것이라는 선입관을 가지고 있는데, 윤성우님의 책은 소설책을 읽는 듯한 느낌을 줍니다. 지식을 전달한다기 보다는 이야기를 풀어나가는 듯이 보입니다. 그러다 보니 읽기에 부담이 없습니다. 그리고 무엇보다도 윤성우님은 읽는 사람의 입장에서 책을 쓰십니다. "어떻게 하면 이 내용을 가장 쉽게 전달할 수 있을까? 어떻게 하면 읽는 사람이 가장 쉽게 이해할 수 있을까?" 하는 생각을 중심에 두고 책을 쓰시기 때문에, 다른 책으로 공부하면서 좌절했던 사람들이 윤성우님의 책을 읽으면서 빛을 발견한 듯한 기쁨과 감동을 느끼게 됩니다. 그 결과로 독자들이 자연스레 팬이 되는 것입니다.
이 책은 C언어를 공부한 사람을 대상으로 쓰여진 책입니다. 만약 C언어를 공부 적이 없다면, 우선 C언어를 공부한 후에, 이 책을 보세요. C언어 교재로는 역시 윤성우님이 쓰신 "난 정말 C PROGRAMMING을 공부한적이 없다구요!"를 권해드립니다.
저는 이 책의 전편인 "열혈강의 C++ 프로그래밍"을 몇 번 읽었지만, 이번에 새로 나온 책을 또 샀습니다. 이 정도면 윤성우님 매니아라고 할만하겠죠? 전편과 이번 개정판의 차이를 대략 한번 살펴보겠습니다.
윤성우님 책의 큰 특징 중 하나가 동영상 강의가 제공된다는 것입니다. 이번 개정판에서는 수강 기간이 대폭 늘어나서 12개월간 강의를 들을 수 있습니다. 이 정도 기간이면 C++을 마스터하는데 충분하리라 생각됩니다. 윤성우님은 동영상강의를 워낙 자세하고 친절하게 하시는데, 동영상 강의를 듣는 것이 C++ 공부하는데 엄청난 도움이 됩니다. 책으로 공부하는 것과 동영상강의로 공부하는 것은 또 다른 느낌을 주는데, 책을 보면서 이해하지 못했던 부분을 동영상강의를 들으면서 이해하게 되는 경우가 많습니다. 책을 구입하신 분들은 동영상강의를 반드시 들으실 것을 권해드립니다. 책이 출판된 지 얼마 안돼서, 현재 동영상강의가 한참 진행중인데, 동영상 강의는 아래 사이트에서 볼 수 있습니다.
http://www.orentec.co.kr
전편은 대략 530페이지 정도이고, 개정판은 650페이지 정도됩니다. 전편에서 부족했던 부분들을 보강하다 보니 페이지가 늘어난 것 같습니다. 전편은 총 13장으로 되어있는데, 개정판은 총 16장으로 되어있습니다. 연산자 오버로딩이 2개의 장으로 보강되었고, 템플릿도 2개의 장으로 내용이 증가했습니다. 그리고 마지막으로 C++ 형변환 연산자에 대한 장이 하나 추가되어서, 총 3개 장이 더 추가 되었습니다.
저는 개정판을 사자마자 C++ 형변환 연산자에 대한 장부터 읽었는데, 역시나 정말 이해하기 쉽게 쓰여져있더군요. 그전에는 솔직히 dymanic_cast , static_cast 이런게 있다는 건 알았는데, 정확하게 어떤 건지는 잘 몰랐습니다. 그냥 C에서 하던 방식으로만 캐스팅을 했지, C++ 방식의 캐스팅은 써본 적이 없거든요. 뭔지 모르니 못 썼던 겁니다.
전편에서는 연산자 오버로딩이 1개장 60페이지 정도를 차지하고 있었는데, 개정판에서는 2개장 100페이지 정도를 차지합니다. 연산자 오버로딩이 사실 좀 어렵거든요. 그래서 보강을 많이 하신 것 같습니다.
템플릿도 전편에서는 1개장 30페이지 정도를 차지하고 있었는데, 개정판에서는 2개장 60페이지 정도로 내용이 늘어났습니다. 나중에 STL등을 공부하려고 하면 템플릿에 대해서 잘 알고 있는 것이 좋습니다. C++ 프로그래밍하면서 STL을 전혀 사용하지 않고 프로그래밍 하기란 거의 불가능할 정도입니다. 그러니 템플릿에 대해서 공부를 확실하게 해두는 것이 좋습니다. 책의 뒷부분에 있는 후기를 읽어보면, 윤성우님께서 나중에 STL에 대한 책도 쓸 계획을 가지고 계시다고 하니, 그 책도 기대가 됩니다.
이 책은 각 장(Chapter)이 끝날 때 마다, 단계별 프로젝트를 진행하도록 되어있습니다. 기본서만 공부해서는 직접 프로젝트 구현하는 능력을 키우기 힘든데, 이 책의 진행방식에 따라 단계별 프로젝트를 수행해나가다 보면, 기본 문법에 대한 이해와 함께 프로젝트 구현 능력도 갖출 수 있습니다.
개정판에서는 전반적으로 전편의 부족했던 부분들이 많이 보강되었습니다. 여기저기서 그런 것들을 찾아볼 수 있습니다. 전편으로 공부했던 분들은 한번쯤 개정판을 읽어보는 것도 괜찮을 것 같습니다.
윤성우님은 책을 한번 쓴 걸로 끝내지 않고, 애프터서비스를 확실하게 해주십니다. 애프터서비스란 것이 다른 게 아니고, 독자들의 질문에 대한 답변을 잘 해주신다는 것입니다. 아래는 윤성우님이 운영하시는 인터넷 카페인데, 이곳에 질문을 남기시면 윤성우님을 비롯해서 많은 분들이 친절하게 답변을 달아주십니다.
http://cafe.naver.com/cstudyjava
윤성우님은 단순하게 책 팔아서 돈 벌자는 자세로 책을 쓰시는 게 아니라, 컴퓨터 언어를 공부하는 사람들에게 어떻게 하면 도움을 줄 수 있을까 하는 자세로 책을 쓰시는 분입니다. 그런 분위기를 잘 나타내는 곳이 바로 위에서 소개해드린 카페인데, 이곳에서는 무료 Off-Line 강좌가 회원들의 자발적인 참여로 이루어지고 있습니다. 카페에서 중심적으로 활동하시는 분들은 대부분 윤성우님의 팬들인데, 뭔가 가족적인 분위기가 느껴지는 그런 카페입니다. 책 구입한 분들은 꼭 카페에 가입하세요. 이런 저런 도움을 많이 받을 수 있습니다.