Python을 즐겨쓴지 어언~~ 1년이 다 되어 간다. (올해를 돌아보니 Python하구 C만 쓴거 같다. 진짜 성격상 극과 극인 언어인데.)
뭐 이래 저래 많은 프로그램을 개발해 봤다.
네트웍, 로봇, 대학원 알고리즘 숙제 등등
근데 마지막 한가지 안해본일이 있다. GUI프로그래밍이다.
물론 Tk를 통한 인터페이스가 Python에는 기본으로 포함되어 있지만 속도도 느리고 GUI가 어딘가 어색해서 한두번 만들어보다가 이내 wxPython으로 넘어갔다.
물론 GUI프로그래밍도 그 나름대로 묘미가 있지만 나처럼 디자인 감각이 없는 사람이 GUI프로그래밍 정말 안된다.
예전 Visual Basic 할때는 무조건 이벤트 드리븐 방식으로 구축을 했어야 했는데 (물론 모듈을 이용할수도 있지만) 워낙에 이제는 Consol프로그래밍에 익숙해 져서 구동 모듈을 먼저 만들고 테스팅 후에 GUI옷을 입히는 순서로 일을 하게 된다.
뭐 순서야 상관없지만 보여지기는 GUI부터 만드는게 빨리되는것 처럼 보일지도 모르겠다.
wxPython을 사용을 예제만 가지고 하다가 어느날 Boa Constructor라는 공개 툴을 만났다. 처음에는 굉장히 불안정한 툴이였는데(한글 문제 등등) 이제는 몇몇 버그만 눈감에 준다면 사용할만 한 툴이 되었다.
스샷을 보면 알겠지만 Delphi IDE와 광장히 닮았다. 그래서 그런지 좀 복잡해 보인다.
유니코드 기반이라서 한글사용시 약간 주의를 요한다. 그래서 개인적으로 코드로 들어가는 한글은 일일이 변환해서 사용을 한다. 물론 Python Shell을 사용해서.
그리고 무작정 이걸 배운다고 예제코드를 뒤지고 다니는건 추천하지 않는다.
먼저 O’Reilly Open Source Convention 2004의 두가지 자료를 보길 추천한다.
Basic과 Advance 버전이 있는데 둘다 시간날때 보시길 추천한다.
이걸 보면 어느정도 wxPython이 어떻게 구성되어 있는지알수 있다. 그리고 Boa Constructor의 help파일을 보길 바란다. 여기 Tutorial을 보며 하나하나 따라하면 Boa Constructor을 사용하는데 별 어려움 없으리라 생각된다.
또한 wxPython Wiki를 방문해서 공부하는것도 괜찮을듯 싶다.
게다가 12월 초에 WxPython in Action책두 나온다니 wxPython을 공부하는데 정말 좋은 환경은 다 갖추어지는것이 아닌가…
Python GUI 프로그래밍 by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.