강좌
클라우드/리눅스에 관한 강좌입니다.
프로그램 분류

About WxPython

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

About WxPython

3_01.gif

프로그램명

wxPython

파일이름

wxPython 2.6.3.3

운영체제

All

라이센스  
홈페이지

http://www.wxpython.org
http://wiki.wxpython.org

작성자

수퍼유저코리아 서버팀http://www.superuser.co.kr

 
소개 및 작동원리 top

wxPython은 구조적이고 배우기 쉬운 Python언어를 이용하여 GUI(Graphical User Interface)를 신속하고 간략히 제작하도록 도와주는 GUI 저작도구(toolkit)이다. wxPython은 크로스 플랫폼 GUI라이브러리인 wxWidgets C++class 를 Python에서 지원가능 하도록 제작한 것이다.

※ Python을 접해보지 않았다면 Python 튜토리얼을 읽어보기 바란다. C와 C++ 혹은 다른 언어에 어느 정도 익숙하다면 2~3일 정도에 Python 코드를 충분히 이해 할 수 있다고 한다.

3_02.gif

Python과 마찬가지로 wxWindows 역시 Open Source 이므로 사용에 아무런 제한이 없다.(wxWindows Source자체를 수정하여 사용하더라도 아무런 문제가 없다)

wxWindows를 기반으로 만들어진 wxPython 역시 Open Source Project로 진행 개발되고 있다.

wxpPython은 요즘의 Linux 배포판에 기본으로 탑재되어 제공되므로 Linux 설치만으로도 사용이 가능하다. 하지만 설치되어 있지 않은 Linux나 Windows 기타 OS에서는 python, wxPython을 설치 하여 주어야한다.(python은 http://www.python.org에서 다운받으면 되고, wxPython은 http://www.wxpython.org에서 다운받으면 된다. wxPython설치만으로 python이 설치되는 경우도 있지만 각각의 패키지를 설치하여 사용하는 것이 사용자 환경에 최적화 할수 있는 방안이라 생각된다.)


특징 top

ㄱ. 배우기 쉽다.

C와 C++ 혹은 다른 언어에 어느 정도 익숙하다면 2~3일 정도에 Python 코드를 충분히 이해 할 수 있다고 한다. 이렇게 쉬운 언어로 작성되어지는 wxPython은 배우기에 매우 편하고 쉽다는 점이 가장 큰 장점이라 하겠다. 또한 Python은 아주 강력한 언어로써의 기능도 가졌기에 wxPython 역시 강력한 능력을 발휘할수 있다는 것이다.

ㄴ. 재미있다.

개발자라면 언어의 선택에 있어 기왕이면 언어를 배우고 사용하기에 편리함고 재미남이 숨겨져 있어야 할 것이다. 구습에 얽매여 있거나 구태의연하다면 언어를 배우고 사용하는 사람의 입장에서는 이보다 피곤한 일은 없을 것이다. 하지만 wxPython은 강력하고 간략함 만큼이나 재미가 숨겨져 있는 GUI 저작도구이다.

ㄷ. 크로스 플랫폼 환경 지향

GUI 화면 개발에서 Windows 환경을 빼놓을 수 없다. 그러면서도 Linux나 다른 여타의 OS의 GUI역시 고려대상이 되어야하는 것이 현실이다. 이렇게 모든 OS 플랫폼에 구속되지 않고 자유로이 구현할 수 있는 크로스 플랫폼도구가 있다면 좋을 것이다. 하지만 아직 그런 완벽한 도구는 존재하지 않다. 그러나 현재까지 나와 있는 GUI toolkit중에 wxPython이 선두그룹에서 달리고 있다. wxPython은 크로스 플랫폼 환경을 지향하고 있다는 말이다.

ㄹ. 기업환경에 적용 가능성

프로그램을 하며 취미로 하는 사람은 아주 드물다. 결국 프로그램은 기업(enterprise)환경에 지배될 수밖에 없다고 필자는 생각한다. 그러기에 개발도구로 사용할 GUI toolkit은 기업환경에 적절히 대응이 되어야 할 것이다. wxPython은 현재 수많은 기업환경에서도 훌륭한 기능을 발휘하고 있다.

ㅁ. 라이센스

사용할 도구가 이왕이면 공개된 도구이면 더욱 편할 것이면 사용자층도 훨씬 넓을 것이라 생각된다. wxPython 역시 Open Source 라이센스 정책을 따르고 있으므로 사용비용의 부담도 줄일 수 있다.


사용용도 top

wxPython는 GUI를 구성하는 최적의 GUI toolkit이다. 현재 사용되고 있는 용도는 설계, 게임, 지도 등등 GUI로 구현하고자 하는 대부분의 것을 지원하고 있다.

본 필자가 직접 확인한 Trybon이라는 조선선박용 설계 프로그램이 wxPython으로 사용하여 구현되어 있는 것을 보았으며 적용해 본적이 있다. 그 외 필자는 간단한 PC관리툴을 제작하여보기도 하였다. 다른 GUI toolkit으로는 시간과 제작방법의 복잡함에서 상당히 자유로웠던 기억이 있다.


평가에 대한 이유
장  점

- 배우기 쉽고, 재미있다.
- 크로스 플랫폼을 지향한다.
- 다양한 분야에 적용할 수 있다.
-
간단한 샘플 소스 및 데모가 같이 있어 비전문가도 사용가능하다.
- 개발시간을 단축할 수 있다.

단  점 - Python이란 언어를 모르고는 사용할 수 없다.
- 기술지원을 받을 곳이 없다.
- 한글 문서가 부족하다.
- 한국내 커뮤니티가 활성화 되어 있지 못하다.
사용기

본 필자는 프로그램을 잘하지 못 하는 취미 프로그래머이다.

이런 필자에게 wxPython은 정말 재미있고 신나는 GUI 저작도구였다.

설치만으로 다양한 데모와 소스를 볼 수 있었으며, 샘플 소스를 이용하여 짧은 시간에 다양하고 간단한 GUI 프로그램이 가능하였다.

wxPython을 더욱 편하게 사용할 수 있게 하는 유틸리티인 Boa Constructor를 보고 또 한번 놀랬다. 상용 GUI toolkit보다 월등히 나은 기능도 있을 정도로 화려하고 간결한 기능들을 볼수 있었다. 언제 시간이 더 난다면 Boa Constructor 리뷰도 작성을 해보고 싶었다.

초보 GUI 프로그래머라면 꼭 한번 사용해보고 그 활용방안을 모색해볼 가치가 있다고 생각되며, 개인적으로 국내에 wxPython 커뮤니티그룹이 생겨 활성화되기를 바란다.


스크린샷

3_03.gif

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,034 명
  • 현재 강좌수 :  35,791 개
  • 현재 접속자 :  86 명