I   회사소개  I  사이트맵  I  도움말
인기검색어
  ID저장
 
회원가입 I 아이디/비밀번호찾기
ㆍOS / 하드웨어 / 서버군
ㆍOA / 오피스 / 전자출판
ㆍ아이폰 / 안드로이드
ㆍ디지털 포토그래피
ㆍ그래픽 / 홈페이지
ㆍ인터넷 프로그래밍
ㆍ일반프로그래밍
ㆍ게임프로그래밍
ㆍSNS / E-Business
ㆍ데이터베이스
ㆍ기 타
ㆍ길라잡이
ㆍ실력이 탐나는
ㆍ회사 실무에 힘을 주는
ㆍ예제가 가득한
ㆍ그림 한 장으로 보는
ㆍ디지털 포토그라피
ㆍ그래픽/홈페이지
페이스북 블로그 네이버포스트
관련분류 : 일반 프로그래밍 / C/C++/STL
C++를 이용한 크로스 플랫폼 개발
크게보기 l 차례보기
ㆍ저 자 Syd Logan
ㆍ역 자 김석중
ㆍ구 분 번역서
ㆍ발행일 2008년 08월 12일
ㆍ정 가 22,000원
ㆍ페이지 559 페이지
ㆍISBN 978-89-5674-430-8
ㆍ난이도 중급
ㆍ출판사 정보문화사
"C++를 위한 크로스 플랫폼 개발"은 Windows, Mac OS X, Linux/Unix 플랫폼에서 이식 가능한 C/C++ 프로그램을 개발하는데 필요한 가이드를 제공해준다. 기능과 품질 모든 면에서 동등한 크로스 플랫폼 프로그램이 필요하다면 이 책이 해결책을 제공해줄 것이다.

Syd Logan은 Mozilla와 Netscape에서의 경험을 바탕으로, 소프트웨어 이식성과 관련된 기술적인 문제들과 소프트웨어 관리 문제들을 체계적으로 설명했다. 기획, 디자인 단계에서부터 코딩, 테스트, 설치에 이르기까지 소프트웨어 이식성과 관련된 모든 것들을 설명했다고 해도 과언이 아니다. 또한, 네이티브 API를 사용하는 것에서 이식 가능한 GUI 개발을 위한 최신의 전략들과 관련된 모든 이슈들도 소개한다. 그리고 전통적인 크로스 플랫폼 개발 전략에서 발생했던 문제점들을 피하기 위해 기능적 동등성을 어떻게 달성할 수 있는지도 설명한다.

새로운 크로스 플랫폼 소프트웨어를 개발할 생각이거나 기존의 C/C++ 소프트웨어를 다른 플랫폼으로 이식해야 할 상황이라면 이 책을 반드시 읽어 보길 바란다. 추후에 크로스 플랫폼을 지원할 생각이라고 하더라도 이 책은 많은 도움이 될 것이다.

타협 없는 크로스 플랫폼 프로그램 개발

"C++을 위한 크로스 플랫폼 개발"은 실제 개발 과정에서 유용하게 사용할 수 있는 여러 가지 테크닉들과 다운로드 가능한 코드 예제들을 소개한다. Mozilla의 XUL에 기반한 크로스 플랫폼 GUI 툴킷인 Trixul은 이 책의 백미라고 할 수 있다.


배우게 될 내용 :

  • 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 툴킷을 해부해본다.

[저자에 관해]
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와 관련된 모든 것이라고 할 수 있다.
 
책을 번역하고 나서, 이 페이지를 채울 때쯤이면 항상 이런 생각을 하곤 합니다. 한 페이지를 쓰는 것이 이렇게 쉽지 않은데, 저자는 얼마나 많은 생각과 고민을 했을까라는 생각입니다. 이 책에도 저자의 경험과 지혜가 온전히 남아있습니다. 어쩌면 그만큼 많은 시행착오를 거쳤을지도 모르겠습니다. 분명한 것은 이 책에 담긴 내용이 크로스 플랫폼 개발의 첫 단추를 끼워줄 만한 것들로 구성되었다는 것입니다. 비단, 크로스 플랫폼 소프트웨어를 개발하지 않더라도 어느 정도 규모 이상의 소프트웨어를 개발하는 프로젝트라면 읽어볼 가치가 있습니다. 저 역시 몇 년 전 개발했던 화상회의 시스템을 떠올려보면, 저자가 고민했던 내용들을 비슷하게 경험했던 것 같습니다.

저자가 권고하는 내용들을 개발 초기부터 모두 반영하는 것은 생각처럼 쉽지 않습니다. '꼭 이렇게까지 해야 하는 것일까?' 혹은 '이것은 나중에 해도 괜찮겠지?'라는 생각에 묻혀버리는 경우가 많습니다. 그러나 첫 단추를 잘못 끼우면 대사를 그르칠 수 있습니다. 프로젝트의 소스 트리 구성, 소스 제어 시스템, 빌드 시스템, 버그 추적 시스템, 크로스 플랫폼 GUI 툴킷 등 어느 하나도 간과할 수 없는 것들입니다.

이 책의 내용을 한 줄로 요약한다면, 지원할 모든 플랫폼에서 동일한 속도로 동일한 기능 집합을 개발해 나가야 한다는 것입니다. 한 줄로 표현하긴 했지만, 이것을 가능하게 하려면 준비하고 노력해야 할 것들이 많습니다. 저자도 언급하였지만, 사용자 인터페이스는 플랫폼마다 독특하게 구현되어 있기 때문에 크로스 플랫폼한 형태로 개발이 이뤄지기가 어렵습니다. 이런 이유 때문에, 저자도 많은 지면을 사용자 인터페이스 부분에 할애하였습니다. 9장에서 다루고 있는 Trixul은 사용자 인터페이스에 대한 저자의 생각을 함축한 결과물이라고 볼 수 있습니다.

요즈음은 게임도 크로스 플랫폼으로 출시되고 있습니다. 즉, 같은 타이틀이 PS3와 XBOX 360으로 출시되고 있는 것입니다. 이처럼, 크로스 플랫폼 소프트웨어는 우리 주변에 알게 모르게 산재되어 있습니다.
 
 
 
                                  
회사소개      개인정보취급방침      고객센터     사이트맵      도움말