도서명 : gcc로 공부하는 C++ Programming과 wxWidgets GUI 개발
출판사 : (주)수퍼유저코리아 ( http://www.linux.co.kr )
* gcc/g++ 및 크로스플랫폼(윈도우즈/리눅스) 프로그래밍을 공부하시려는 분들은 읽어보시면 좋겠지요.
* C/C++ 기초 공부는 비주얼보다 텍스트 베이스로 공부하시는게 좋을것 같네요.
* 총 페이지수는 783페이지
[도서 내용 요약]
* Fedora/CentOS/Windows XP
* C++ 문법 예제와 설명(gcc/g++)
* wxWdgets
* CodeBlocks
* vim
* RPM Package
* subversion
* websvn
[도서 구매처]
도서명 : gcc로 공부하는 C++ Programming과 wxWidgets GUI개발 : 리눅스 개발자를 위한 김태용의 gcc와 C++ 기초 입문
총 페이지 수 : 783 페이지
가격 : 34,000원
저자 : 김태용
공식 출판일 : 2009년 03월 01일
2009년부터 인세의 1%를 "아름다운 재단"의 "미래세대" 항목에 기부합니다.
[책 표지 가안]
[저자의 글]
=====
독자 여러분. 공학인 동지 여러분. 본 도서를 통하여 만나 뵙게 되어서 반갑습니다.
필자는 시중에 나와있는 C++ 입문 도서들을 보면서 왜 크로스 플랫폼 개발을 위한 안내서는 없을까? 라고 생각해 왔습니다. 이런 생각을 가지게 된 이유는 다름 아니라, 리눅스라는 OS를 사용하면서 생겨난 의문이었습니다. 필자는 1996년부터 직업적인 이유로 유닉스를 사용하면서 자연스럽게 리눅스를 접하기 시작했습니다.
대부분의 학교 교육들은 마이크로소프트 윈도우와 관련된 개발 교육에만 편중되어 있습니다. 애플리케이션을 만들기 위해서는 Visual C++도 공부해야 하고, 델파이도 공부해야 하고, GTK도 공부해야 하고, 여하튼 공부할 것이 너무도 많습니다. 하지만 wxWidgets를 공부해 두면 애플리케이션을 개발하는 작업에는 거의 모든 OS에 적용할 수 있으니 얼마나 시간적으로 금전적으로 경제적일까요?
뉴스그룹을 보면 해외에서는 wxWidgets를 사용해서 개발하는 개발자들이 많습니다. 유독 한국에서만 Visual C++를 사용하는 유저들만 학교에서 양산하고 있다는 것입니다. 물론 사용자가 많고, 레퍼런스 도서들이 많다는 점이 한 몫을 했다고 해도 과언은 아니지만, wxWidgets는 이보다 더 쉽게 프로그래밍 할 수 있습니다. 또한 한번 공부해 두면 어느 OS에서도 쉽게 프로그래밍을 할 수 있기 때문에 아주 유용합니다.
C++ 언어는 C 언어로부터 시작된 언어입니다. 그래서 C 언어에 대해서 조금이라도 알고 있으면 C++ 언어를 공부하는데 많은 도움이 됩니다. 하지만, C++ 언어를 먼저 공부한다고 해서 잘못된 것은 아닙니다. 그래서 본 도서에서는 C++ 언어의 객체지향 개념 외에 C 언어의 기본 문법들도 간략하게 언급하였습니다.
2008년 여름, 대한민국 국민들은 국민의 주권을 표현하고, 알리기 위해 정부를 향해 촛불문화제를 진행하였습니다. 국민이 정부와의 소통(커뮤니케이션)을 위해 많은 노력을 한 것과 마찬가지로 컴퓨터와 인간과의 커뮤니케이션을 위해 C++라는 컴퓨터 언어를 공부하시는데 본 도서가 조금이나마 도움이 되었으면 좋겠습니다.
2009년을 맞이하며, 대구에서 김 태 용
http://www.lug.or.kr
=====
[추천사]
=====
한국리눅스유저그룹(한국 LUG) 김태용 회장과는 2002년 대구 교사 리눅스 동호회 활동을 하면서 처음 만나게 되었으며, 내가 제4회 한국 LUG 세미나(동양대학교)에서 강사로 참여하면서 더욱 가까이 지내게 되었다. 7여 년의 세월 동안 그를 가까이서 지켜본 모습으로 볼 때 리눅스에 대한 사랑과 열정이 남달랐다.
몇 년간 한국 LUG를 운영하는 모습을 지켜보면서 느낀 점은, 그는 개인적 사심 없이 오직 리눅스의 전파를 위해서 온 힘 쏟는 모습을 볼 수 있었다. 특히 매년 세미나를 진행하는 동안에는 부족한 경비를 개인의 사비로 보충하는 것을 마다하지 않았으며, 거리가 먼 다른 지역에서 한국 리눅스 세미나를 참여하기 위해 찾아온 회원들에게 따뜻한 식사라도 한 끼 대접하여 보내고자 하는 그의 따뜻한 마음을 보고 인간적으로 감동을 느끼지 않을 수 없었다.
그가 "CentOS 리눅스 구축관리실무"라는 리눅스 책에 이어 두 번째로 리눅스와 관련된 “C++ 기초 입문 :: gcc를 이용한 C++와 wxWidgets GUI" 책을 출판한다. 그는 "리눅스와 관련된 모든 것을 사람들과 나누고 싶어서 리눅스와 관련된 책이면 모두 출판해보고 싶다."라는 포부를 나에게 이야기 한 적이 있다. 그가 가지고 있는 리눅스에 대한 열정은 과연 어디가 끝일까?
이번에 출판하는 "C++ 기초 입문…"은 C++ 프로그램을 처음 접하는 초보자라도 누구나 쉽게 접근할 수 있도록 잘 정리된 책이다. 단계별로 책에서 이끄는 대로 따라하다 보면 C++ 프로그래밍에 대한 능력이 빠르게 발전할 것이라고 생각한다.
특히, 이번 책에서는 리눅스에서 GUI(Graphic User Interface) 툴킷(Toolkit)을 이용하여 프로그램을 개발할 수 있는 크로스플랫폼을 지원하는 wxWidgets을 포함 시켰다는 것은 누구나 반길 수 있는 부분이라 생각한다. wxWidgets 툴킷을 사용하여 개발한 애플리케이션은 윈도우뿐만 아니라 리눅스, 유닉스, 심지어 Mac OS에서도 GUI 소스코드를 재사용할 수 있기 때문에 프로그래밍의 효율성을 높이는 데 많은 일조를 할 것이라고 생각한다.
마지막으로 이번 책을 통하여 모든 프로그램 개발자들이 wxWidgets 툴킷을 이용하여 리눅스에서도 쉽게 프로그래밍을 할 수 있게 되기를 바라며, 대한민국의 모든 사람들에게 리눅스가 한발 더 가까이 다가갔으면 하는 간절한 마음으로 추천사를 마치고자 한다.
영남대학교 컴퓨터공학과 광정보 연구실에서
대구 경암중학교 과학부장, 컴퓨터공학 박사 정 왕 부
=====
[서평]
=====
"이 책을 덮는 순간 당신의 C++ 실력은 OS(운영체제)로부터 자유로워지게 될 것이다."
영진전문대학 컴퓨터정보계열 교수 차 용 두
=====
[목차]
=====
Part 1. C++ 프로그래밍
Chapter1 :: C++ 프로그래밍 시작하기
1-1 컴퓨터의 내부구조
1-2 C++ 언어란
1-3 C++ 언어의 특징
1-4 C++ 프로그래밍 과정
1-5 첫 번째 C++ 프로그래밍
1-6 C 언어로부터 확장된 연산자
Chapter 2 :: 변수와 상수 그리고 함수
2-1 변수(Variable)란
2-2 변수의 데이터 타입
2-3 상수(Constant)
2-4 연산자(Operator)
2-5 판단문과 제어문
2-6 함수(Function)
2-7 함수의 확장
Chapter 3 :: 배열과 포인터
3-1 배열(Array)
3-2 문자열 처리
3-3 포인터(Pointer)
Chapter 4 :: 객체지향 언어
4-1 객체지향 언어(OOP)란
4-2 구조체와 클래스(Class)
4-3 클래스(Class)와 객체(Object)
4-4 클래스(Class) 멤버의 접근제어
4-5 클래스(Class)의 초기화와 프로그램 종료
4-6 클래스와 배열
4-7 this 포인터(자기 참조 포인터)
4-8 friend 키워드
4-9 복사 생성자
4-10 복사 생성자의 호출 시점
Chapter 5 :: const와 static
5-1 const 키워드와 클래스가 만나면
5-2 static 키워드와 클래스가 만나면
Chapter 6 :: 상속(Inheritance)
6-1 클래스 상속
6-2 클래스 상속에서의 생성자와 소멸자
6-3 클래스의 상속과 멤버 접근권한
6-4 클래스간의 상속관계
Chapter 7 :: 상속과 다형성
7-1 상속의 조건
7-2 상속 객체와 포인터
7-3 상속 객체와 레퍼런스
7-4 정적 바인딩과 동적 바인딩
7-5 다중 상속
Chapter 8 :: 연산자 오버로딩
8-1 연산자와 함수
8-2 연산자 오버로딩
8-3 단항 연산자 오버로딩
Chapter 9 :: 템플릿
9-1 템플릿(template) 이란
9-2 함수 템플릿
9-3 클래스 템플릿
Chapter 10 :: 예외 처리
10-1 예외 처리란
10-2 C++ 언어의 예외 처리
10-3 예외를 나타내는 클래스와 상속
Chapter 11 :: C++ 입출력
11-1 C++ 입출력 기초
11-2 파일 입출력
Part 2. wxWidgets
Chapter 12 :: wxWidgets 시작
12-1 wxWidgets 시작
12-2 wxWidgets 예제
12-3 wxWidgets 애플리케이션 실행 순서 정리
Chapter 13 :: wxWidgets 메뉴바와 레이아웃
13-1 메뉴바 구성
13-2 간단한 메뉴바 구성하기
13-3 레이아웃 구성하기
Chapter 14 :: wxWidgets 이벤트 처리
14-1 이벤트
Chapter 15 :: wxWidgets 다이얼로그
15-1 다이얼로그
15-2 정의된 다이얼로그
15-3 커스텀 다이얼로그(Custom Dialog)
Chapter 16 :: wxWidgets 위젯들
16-1 여러 가지 위젯들
16-2 Drag and Drop
Chapter 17 :: Device Contexts
17-1 Device Contexts, GDI
17-2 Drawing text
17-3 Point
17-4 Pen
17-5 Regions
17-6 Gradient
17-7 Shapes
Chapter 18 :: 기타 위젯
18-1 Burning Widget
Chapter 19 :: 윈도우와 리눅스에서 C++ 프로그래밍 환경 구축
19-1 윈도우에서 CodeBlocks 환경 구축
19-2 리눅스(Fedora) 설치와 CodeBlocks 환경 구축
Chapter 20 :: VI(M), RPM 패키징 그리고 SUBVERSION
20-1 vi(m) 편집기
20-2 RPM 패키지 만들기
20-3 subversion 활용하기
Chapter 21 :: wxWidgets 프로그램 예제와 배포방법
21-1 자동종료 프로그램 만들기 예제
=====
[wxWidgets로 만든 프로그램 캡쳐]
눈팅만으로는 전체글을 볼 수 없습니다. 로그인하셔야 합니다.