로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

gcc로 공부하는 C++ Programming과 wxWidgets GUI개발

 [[리눅스 개발자를 위한 김태용의 gcc와 C++ 기초 입문]]
   
지은이 김태용   |   출판사 수퍼유저코리아  |   발행일 2009년 03월 03일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 34,000원32,300원 5%
마일리지 1% 340원
발행일 2009-03-03
ISBN 8992927126 |  9788992927123
기타정보 국내서 | 783쪽
예상출고일
배송비 무료배송
   
운영체계(OS)
종합지수 2p 386 위
   
 

● 도서소개
본 도서는 총 2개의 파트로 구성되어 있다. C++ 언어의 기본 문법 파트와 크로스 플랫폼을 지원하는 wxWidgets GUI 툴킷에 대한 파트로 구성되어 있다.

Part 1. C++ 프로그래밍
파트 1에서는 C++ 프로그래밍에 입문하기 위한 기본 문법사항들을 공부한다.

본 도서에서는 C++ 언어를 공부하기 위해 마이크로소프트의 VIsual C++를 사용하지 않고 공개 컴파일러인 gcc, g++를 사용할 것이다. 그리고 예제 파일들에 대한 컴파일과 실행은 리눅스에서 수행한 결과를 표시하였다. 윈도우에서 gcc, g++ 컴파일러를 설치하기 위해서는 MinGW를 설치해야 하는데, 이에 대한 내용은 Chapter 19에 정리해 두었다.

먼저 C++ 언어에 대한 특징을 살펴보고, 생애 최초의 C++ 프로그래밍을 따라 해 보도록 하였으며, 예제에 사용된 내용들을 설명하는 방법으로 구성하였다. 변수와 상수 그리고 함수 작성법과 사용법, 배열과 포인터 부분에서도 관련된 예제를 통하여 이해를 할 수 있도록 노력하였으며, 메모리 관련 부분에서는 그림을 사용하여 설명함으로써 이해도를 높이기 위해 노력하였다.

객체지향 언어로써의 C++ 언어에 대해 공부하며, 클래스의 개념과 사용법에 대해 공부한다. 또한 클래스의 상속과 연산자 오버로딩, 템플릿, 예외처리에 대해 공부하고, C++ 언어의 파일 입출력에 대해 공부할 수 있도록 구성하였다.

Part 2. wxWidgets

파트 2에서는 GUI 프로그래밍을 위해 wxWidgets GUI 툴킷을 사용한 프로그래밍 방법에 대해 공부한다. C++ IDE로는 CodeBlocks를 사용하였다. 물론 wxDev-C++ IDE를 사용할 수도 있다.

wxWidgets는 크로스 플랫폼을 지원하는 GUI 툴킷이며 윈도우, 리눅스, 맥 OS에서 코드를 재사용할 수 있다. 즉, 한번 공부해 두면 여러 OS에서 소스코드를 재사용 가능하다.

먼저 wxWidgets로 만들어진 간단한 예제부터 시작하여, GUI 폼을 구성하는 방법과 메뉴바, 레이아웃 구성을 공부하고, wxWidgets에서의 이벤트 처리와 기본적으로 제공되는 여러 가지 위젯들의 사용법을 공부한다.

Chapter 19에는 윈도우와 리눅스에서 크로스 플랫폼 개발환경 구축을 위한 C++ 프로그래밍 환경구축에 대해 정리해 두었으며, 리눅스를 처음 접하시는 분들을 위해 Fedora 8 리눅스 배포판의 설치방법을 정리해 두었다.

Chaper 20에는 리눅스 개발환경에서 vi(m) 편집기 사용법과 RPM 패키징 그리고 협업을 위해 소스를 공유하여 작업 할 수 있는 SUBVERSION 시스템 구축과 사용법을 정리하였다.

마지막으로 윈도우에서 작성한 간단한 wxWidgets 프로그램 예제를 실어두었으며, 배포방법에 대해서 공부할 것이다.

● 서 평
"이 책을 덮는 순간 당신의 C++ 실력은 OS(운영체제)로부터 자유로워지게 될 것이다."

영진전문대학 컴퓨터정보계열 교수 차 용 두

“이 책에서 리눅스에 GUI(Graphic User Interface) 툴킷(Toolkit)을 이용하여 프로그램을
개발할 수 있는 크로스플랫폼을 지원하는 wxWidgets을 포함 시켰다는 것은 누구나 반길 수 있는 부분이라 생각한다. wxWidgets 툴킷을 사용하여 개발한 애플리케이션은 윈도우뿐만 아니라 리눅스, 유닉스, 심지어 Mac OS에서도 GUI 소스코드를 재사용할 수 있기 때문에 프로그래밍의 효율성을 높이는 데 많은 일조를 할 것이라고 생각한다.”

대구 경암중학교 과학부장, 컴퓨터공학 박사 정 왕 부

“gcc를 사용하는 리눅스 개발자들에게 매우 유용한 책...
최근 리눅스기반에서 gcc로 개발하고자하는 경향이 두드러지게 많아지고 있다. 이런 상황에서 김태용씨의 gcc기초 책이 나와서 큰 도움이 될 듯하다. 특히 gcc로 C++를 배울 수 있도록 설계된 책은 최초가 아닌가 한다. 무엇보다도 최근 이슈가 되고 있는 wxWidgets으로 GUI 인터페이스를 개발하는 개발자들에게는 꼭 필요한 책이라 생각된다. 리눅스에서 gcc를 이렇게 자세히 다룬 책을 국내에 출판하게되어 국내 리눅스인의 한사람으로 큰 자부심을 느낀다.”

(주)수퍼유저코리아 대표이사 박성수

● 저자의 글
독자 여러분. 공학인 동지 여러분. 본 도서를 통하여 만나 뵙게 되어서 반갑습니다.
필자는 시중에 나와있는 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 툴킷을 이용하여 리눅스에서도 쉽게 프로그래밍을 할 수 있게 되기를 바라며, 대한민국의 모든 사람들에게 리눅스가 한발 더 가까이 다가갔으면 하는 간절한 마음으로 추천사를 마치고자 한다.

영남대학교 컴퓨터공학과 광정보 연구실에서
대구 경암중학교 과학부장, 컴퓨터공학 박사 정 왕 부

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 자동종료 프로그램 만들기 예제

● 저자소개
[ 김태용 ]
- (주)LG전자 모니터사업부 기구설계 연구원 근무[실리콘그래픽스(SGI) UNIX, HP UNIX]
LG 플래트론 모니터 설계 참여[UniGraphics, AutoCad]
IBM, Gateway, APPLE Project 참여
- 인도네시아 연수(LG전자)
- 천리안 리눅스 동호회 활동
- 엑셀 리눅스 참여
- 한국리눅스유저그룹(http://www.lug.or.kr) 회장 (1998년~2008년 현재 회원 10,190여명)
- 한국소호진흥협회 운영위원
- 한국리눅스협의회 운영위원, 기술위원
한국IBM 신재철 사장, 이상호 실장, 한국HP 최준근 사장, 이화숙 이사, 한국오라클 권기식 전무, 한글과컴퓨터 박준규 본부장, 리눅스원, 한컴리눅스, 와우리눅스, 리눅스코리아, 씨네티아, 포스데이타, 삼성SDS, 엘지CNS, 한국정보통신산업협회 김춘석 본부장, 권희춘 교수, 정보통신부, ETRI, 행정자치부, 조달청 등
- 계명대학교 리눅스 세미나 지원
- 전북대학교 리눅스 세미나 지원
- 동양대학교 리눅스 세미나 지원
- 부산대학교 리눅스 세미나 지원
- 한밭대학교 리눅스 세미나 지원
- 울산대학교 리눅스 세미나 지원
- 연세대학교 리눅스 세미나 지원
- 부산상공회의소 리눅스 세미나 지원
- (주)리눅스원 공개소프트웨어 공모전 평가 검수
- 청와대, 행정자치부외 100여개(서울/대전) 공공기관/연구원 시스템 담당자 방문 간담회
- 한국정보보호진흥원 - 교육기관 리눅스 서버 스팸메일 대응 지원
- 리누스 토발즈(Torvalds : 리눅스 창시자/개발자) 간담회
- KIPA 고현진원장과의 공개소프트웨어 간담회
- 대구디지털산업진흥원(DIP) 리눅스 세미나 지원
- 대구디지털산업진흥원(DIP) 지역 공개SW 활성화 자문위원
- 조달청 공공기관 리눅스 세미나 지원 - 조달청 보급창장님과 간담회
- 한국소프트웨어 진흥원(KIPA) 공개소프트웨어 프로젝트 참여 3회
- 대구디지털산업진흥원 공개소프트웨어 프로젝트 참여 2회
- (주)한글과컴퓨터, 정보통신부 리눅스 기술지원 프로젝트 참여
- 한국 리눅스 표준화 선정작업 참여 : 정보통신부, TTA, KIPA, ETRI
- 한국전자통신연구원(ETRI) 공개소프트 프로젝트(부요 리눅스)런칭 참여
- 중소기업 사랑특강(대학생 대상) - 중소기업중앙회
- 영진전문대학 리눅스 세미나 지원
- 영진전문대학 리눅스 강의
- 한국산업인력공단 멕시코 연수생 공개소프트웨어(LINUX) 교육
- "CentOS 리눅스 구축관리 실무" 서적 집필
- 경북대학교 산업대학원 컴퓨터공학과 석사
- (주)KT 연수원 리눅스 특강
- 2008년, 제12회 한국LUG 세미나 개최 - 대구디지털산업진흥원(DIP)
- "김태용의 C++ 기초 입문 - gcc로 공부하는 C++와 wxWidgets GUI" 서적 집필
- "김태용의 리눅스 쉘 스크립트 입문" 서적 집필
등록된 서평이 없습니다.
 
전체평균(0)
회원평점   회원서평수 0
김태용 의 최근 저서
 
김태용의 리눅스 쉘 스크립트 프로그래밍 입문
28,800원
(10%↓+5%)
 
수퍼유저코리아 출판사의 신간
리눅스 서버 보안관리 실무
홍석범 저
31,360원
(2%↓+1%)
 
CentOS 리눅스 구축관리실무
정우영 저
34,300원
(2%↓+1%)
 
인터넷정보관리사 3급 2급
윤은준 저 저
21,560원
(2%↓+1%)
 
리눅스마스터 2급
박성수 저
25,000원
(0%↓+1%)
 
국가공인 리눅스마스터 1급
박성수, 강기봉, 정우영 저
33,950원
(3%↓+2%)
 
이메일주소수집거부