'크로스 플랫폼'에 해당되는 글 1건

  1. 2009/01/13 Cross platform GUI Toolkit의 선택 (2) - phas
맥이 부상하고 iTunes Apps Store가 대박을 터뜨리면서, 점점 윈도에서 벗어나 다른 플랫폼의 개발에 손을 대는 인구가 증가하고 있습니다. 보통 각각의 OS용 프로그램을 개발할 때, 다음과 같은 GUI Toolkit을 사용하게 됩니다.
  • Windows : MFC, WTL
  • Linux : GTK+, Qt
  • Mac OS : Carbon, Cocoa
위의 라이브러리를 사용해서 두 가지 이상의 플랫폼을 지원하고 싶다면, GUI 부분을 두 번 개발하는 수고를 들여야 합니다. 보다 Native에 가까운 GUI를 구현 할 수는 있겠지만, 시간과 비용이 만만치 않습니다. 그러느니 여러 플랫폼을 지원하는 녀석을 사용하는것이 더 좋은 결과를 낼 수도 있습니다.

좀 오래된 자료이긴 하지만 이곳을 보면 수많은 GUI Toolkit이 존재합니다. 그럼, 대표적인 물건들을 몇 개 살펴봅시다.

GTK+

C기반의 GUI Toolkit으로, 리눅스의 GNOME이 이것으로 만들어졌습니다. GIMP라는 대표적인 프로그램이 존재합니다. 윈도 지원은 나쁘지 않지만, 맥은 Carbon 기반이라 못생겼습니다.
Gnome Desktop

Gnome

맥용 GIMP

GIMP for mac


Qt

TrollTech라는 회사에서 배포했었는데 지금은 노키아에 인수됐습니다. "cute"라고 읽는다고 하는군요. C++기반으로 GPL버전과 상용버전이 존재합니다. 추상화가 굉장히 잘되어 있으며, 공식 사이트의 레퍼런스가 훌륭합니다. GTK+와 마찬가지로 맥은 Carbon기반이었으나, 최신 베타 버전은 Cocoa를 지원합니다.
KDE Desktop

KDE

Google Earth

Google Earth


XUL

Mozilla재단의 XML 유저인터페이스 언어로 Firefox에 사용되었습니다. XML과 Javascript를 사용해서 프로그래밍 하게 되는데, XPCOM을 이용해서 C++코드도 사용이 가능합니다. XML만으로 GUI의 구성이 가능하여 접근이 쉬우나, 레퍼런스가 부족한 편입니다.
Firefox

Firefox

Songbird

Songbird


wxWidget

MFC와 비슷한 문법과 많은 플랫폼지원으로 윈도개발자들이 접하기에는 가장 친숙한 편입니다. C++기반이며 비교적 레퍼런스가 많은 편이고 바인딩 된 언어도 많습니다. 하지만 역시 맥은 예쁘지 않습니다.
VibeStation

VibeStation

BitWise IM

BitWise IM


MFC개발을 해봤다면 wxWidget이 가장 접근이 쉬울 것이고, 맥을 고려한다면 Qt가 가장 예쁘게 나오며, 모든 플랫폼에서 같은 GUI를 보여주고 싶다면 XUL만한게 없습니다.

SpaceEraser 부팅 시디에서의 GUI는 Qt-Embedded로 개발되었습니다.
이올린에 북마크하기(0) 이올린에 추천하기(0)
2009/01/13 13:40 2009/01/13 13:40