장바구니 담기 close

장바구니에 상품을 담았습니다.

C++를 이용한 크로스 플랫폼 개발

C++를 이용한 크로스 플랫폼 개발

  • Syd Logan
  • |
  • 정보문화사
  • |
  • 2008-08-12 출간
  • |
  • 559페이지
  • |
  • 190 X 235 mm
  • |
  • ISBN 9788956744308
판매가

22,000원

즉시할인가

19,800

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
19,800

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

타협 없는 크로스 플랫폼 프로그램 개발
Mac OS X, Linux, Windows 응용 프로그램 개발

「C++를 위한 크로스 플랫폼 개발」은 Windows, Mac OS X, Linux/Unix 플랫폼에서 이식 가능한 C/C++ 프로그램을 개발하는데 필요한 가이드를 제공해준다. 기능과 품질 모든 면에서 동등한 크로스 플랫폼 프로그램이 필요하다면 이 책이 해결책을 제공해줄 것이다.

[이 책이 다루는 내용]

ㆍWindows, Mac OS, Linux를 사용하는 수백만의 웹 브라우저 사용자들을 위해 Netscape가 사용했던 정책과 관리 방법들을 소개한다.
ㆍ모든 플랫폼에서 일관된 인터페이스와 동등한 기능을 구현하기 위해 필요한 것들을 설명한다.
ㆍWin32/.NET, Cocoa, Gtk+와 같은 플랫폼 특화 GUI API들의 공통점과 차이점을 설명한다.
ㆍ네이티브 IDE를 언제, 어떻게 사용해야 하는지 설명하고, 그것이 이식성에 미칠 수 있는 영향을 최소화 해본다.
ㆍPOSIX와 STL같은 표준 API들을 어떻게 사용해야 하는지 설명한다.
ㆍ부동 소수점수, char 타입, 데이터 직렬화, C++의 타입과 관련된 이식성 함정들을 피할 수 있는 해결책을 제시한다.
ㆍNSPR(Netscape Portable Runtime)과 같은 플랫폼 추상 라이브러리를 소개한다.
ㆍ크로스 플랫폼한 버그 보고 및 추적 시스템을 소개한다.
ㆍ여러 가지 플랫폼에서의 빌드 방법을 설명하고, 빌드가 실패한 플랫폼을 발견해내는 방법을 소개한다.
ㆍ네이티브 런타임 환경이 무엇인지 설명하고, 프로그램 설치 과정에서 발생할 수 있는 문제들을 소개한다.
ㆍ단 하나의 코드베이스로 멀티 플랫폼 GUI 프로그램을 구현해주는 wxWidgets을 사용해본다.
ㆍ응용 프로그램의 이식성을 철저하게 테스트하는 방법을 소개한다.
ㆍTrixul을 사용하여 크로스 플랫폼 GUI 툴킷을 해부해본다.

목차

Chapter 1 정책과 관리
아이템 1: 모든 플랫폼을 동등하게 생각하라
아이템 2: 공통된 코드베이스를 구축한다
플랫폼 팩토리 구현
구현 클래스
플랫폼에 특화된 ProcessesImpl 클래스
인스턴스 계층 관계
CVS와 SVN으로 프로젝트 구성하기
Makefile과 빌드
아이템 3: 개발자가 작성한 코드는 여러 컴파일러로 컴파일해봐야 한다
아이템 4: 여러 플랫폼에서 코드를 빌드한다
아이템 5: 각 플랫폼에서 빌드를 테스트한다
아이템 6: 컴파일러 경고에 귀 기울이자
GNU 플래그
Microsoft Visual C++

Chapter 2 빌드 시스템과 툴 체인
아이템 7: 각 플랫폼에서 가장 잘 특화된 컴파일러를 사용하라
아이템 8: IDE를 적절히 활용하라
아이템 9: Windows에 Cygwin을 설치한다
아이템 10: 크로스 플랫폼 개발을 위해 make를 이용한다
make
Windows에서 빌드하기
autoconf/automake
Imake
Mac OS X에서 Imake 설치하기
Windows에서 Imake 설치하기
Imake 사용 예제
Imakefiles
하나 이상의 소스 파일을 완전한 프로그램으로 빌드하기
site.def로 기본값 덮어쓰기
코드에서 #ifdef 없애기
Imake가 사용하는 파일들
하위 폴더를 가진 프로젝트 빌드
디버그 버전 빌드하기

Chapter 3 소프트웨어 설정 관리
아이템 11: 버그 리포트 및 추적 시스템을 사용한다
접근성
플랫폼에 종속적인 버그 추적
Bugzilla
아이템 12: Tinderbox 설정하기
아이템 13: 소스 코드를 CVS나 Subversion으로 관리한다
CVS의 설치와 사용
아이템 14: Patch 사용하기
예제
patch 옵션
거부된 패치 다루기
패치와 크로스 플랫폼 개발

Chapter 4 설치와 배포
아이템 15: 네이티브 인스톨러를 지원한다
XPInstall
플랫폼 전용 인스톨러

Chapter 5 운영체제 인터페이스와 라이브러리
아이템 16: POSIX와 같은 표준 API를 사용하라
POSIX
POSIX, SVID, XPG, BSD 지원
GCC의 표준 지원
Microsoft 런타임 라이브러리의 POSIX 지원
Microsoft Windows에서 GCC 사용하기
표준 선택하기
아이템 17: NSPR과 같은 플랫폼 추상화 라이브러리 사용을 고려한다
왜 NSPR이 필요한가?
NSPR의 기본
스레드
NSPR의 다른 기능들

Chapter 6 여러 가지 이식성 문제들
아이템 18: 부동소수점 타입을 사용할 때에는 주의가 필요하다
부동소수점수를 바이너리로 직렬화하지 말아야 한다
동등
아이템 19: char 타입의 부호를 명확히 하라
아이템 20: 바이너리 데이터의 직렬화를 피하라
아이템 21: 타입의 크기와 구성에 관련된 문제들을 피하라
정수 타입의 크기
NSPR과 타입
크기와 효율성
정수 변환
구조체 정렬과 순서

Chapter 7 사용자 인터페이스
아이템 22: 모델과 사용자 인터페이스를 분리하라
모델과 뷰를 이용하여 사용자 인터페이스와 응용 프로그램 로직을 분리한다
뷰와 모델간의 통신을 위해 발행/구독 패턴 사용하기
요약
아이템 23: 크로스 플랫폼 사용자 인터페이스 전략을 개발하라
이식성 있는 크로스 플랫폼 GUI 개발에 영향을 주는 문제들
GUI 전략 선택

Chapter 8 wxWidgets
wxWidgets
라이센스
wxWidgets 설치
간단한 예제
응용 프로그램 사용자 인터페이스 만들기
wxWidgets 응용 프로그램 빌드
컨트롤과 이벤트
컨테이너 위젯
대화상자
복합 위젯
국제화와 지역화

Chapter 9 C++ 크로스 플랫폼 GUI 툴킷 개발
XUL은 무엇인가?
DHTML
HTML
스크립트 언어
DOM
스타일 시스템
XUL
윈도우와 대화상자
Box
도구 상자
메뉴
컨트롤
그 밖의 위젯
XUL 프로그래밍
JavaScript로 UI에 로직 붙이기
XPCOM과 XPConnect로 JavaScript와 C/C++ 코드 연동하기
Trixul
Trixul의 위젯 지원
Trixul의 기본 동작
위젯
구현 클래스들
위젯 구현 개체 생성하기
위젯 팩토리
응용 프로그램 메인 루프
Trixul의 사용자 인터페이스 생성 절차
Document, Element, DOM
위젯 생성
레이아웃
스크롤 가능한 윈도우와 레이아웃
JavaScript와의 통합
C++ 컴포넌트와의 통합

찾아보기

저자소개

Syd Logan은 캘리포니아 남부에서 소프트웨어 개발자로 살고 있다. 그는 센디에이고 주립 대학에서 컴퓨터 과학 학사와 석사를 받았다. Syd는 Netscape Client Product Development (CPD) 팀의 멤버로서 Netscape 6과 Netscape 7에서 개발자와 관리자로 일하였다. AOL에서는 VOIP와 P2P 비디오 기능을 구현한 경험도 가지고 있다. Syd는 Prentice Hall에서 출판된 Developing Imaging Applications with XIELib과 Gtk+ Programming in C의 저자이기도 하다. 그의 기술적인 관심사는 기계 학습, 운영체제 디자인, 알고리즘, C, C++, UNIX와 관련된 모든 것이라고 할 수 있다.

도서소개

Windows, Mac OS X, Linux/Unix 플랫폼에서 이식 가능한 C/C++ 프로그램을 개발하는데 필요한 가이드!

이 책은 C++를 이용해서 윈도우용, 매킨토시용, 리눅스용 프로그램을 한꺼번에 개발할 수 있도록 해준다. 타협 없는 크로스 플랫폼 프로그램 개발과 Mac OS X, Linux, Windows 응용 프로그램 개발에 필요한 지식과 정보를 제공한다. 기능과 품질 모든 면에서 동등한 크로스 플랫폼 프로그램이 필요한 이들에게 해결책을 제시한다.

본문은 Windows, Mac OS, Linux 사용자들을 위해 Netscape가 사용했던 정책과 관리 방법, 모든 플랫폼에서 일관된 인터페이스와 동등한 기능을 구현하기 위해 필요한 것, 플랫폼 특화 GUI API들의 공통점과 차이점, POSIX와 STL같은 표준 API 사용법, 플랫폼 추상 라이브러리, 크로스 플랫폼한 버그 보고 및 추적 시스템 등을 설명한다.

그리고 네이티브 IDE, 네이티브 런타임 환경, 단 하나의 코드베이스로 멀티 플랫폼 GUI 프로그램을 구현해주는 wxWidgets, 이식성 함정들을 피할 수 있는 해결책, 여러 가지 플랫폼에서의 빌드 방법, 빌드가 실패한 플랫폼 발견법, 응용 프로그램의 이식성 테스트 등을 소개한다. 또한 Trixul을 사용하여 크로스 플랫폼 GUI 툴킷도 해부한다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.