파이썬 GUI 프로그래밍
파이썬에서 데스크탑 프로그램 혹은 GUI 프로그램을 만들기 위해서는 여러 GUI Framework (혹은 Toolkit) 들을 사용할 수 있다. GUI Framework/Toolkit에는 파이썬에서 기본적으로 제공되는 표준 GUI 라이브러리인 Tkinter로부터, Qt 프레임워크를 파이썬에서 사용하도록 한 PyQt와 PySide, GTK 툴킷을 파이썬에서 사용하게 한 PyGTK 등등 다양한 툴들이 있다.
여기서는 이 중 많이 사용되고 있는 PyQt를 사용하여 GUI 프로그램을 만드는 방법을 중점적으로 설명한다. PyQt를 사용하면, 동일한 파이썬코드를 사용하여 윈도우즈, Mac, 리눅스에서 모두 동작하는 GUI 프로그램을 작성할 수 있다. PyQt는 크게 PyQt4 버젼과 PyQt5 버젼이 있는데, 이들 각 버젼은 Qt v4와 Qt v5를 파이썬에서 쓸 수 있도록 한 것이다. 하나의 언어에서 작성된 라이브러리나 서비스를 다른 언어에서 사용할 수 있도록 하는 것을 Language Binding 이라 한다. PyQt는 Qt의 Python Language Binding 중의 하나이다. Qt는 C++로 작성된 크로스 플랫폼 프레임워크로 The Qt Company에서 작성한 프로그램이다. 그동안 많이 사용되어 왔던 PyQt는 PyQt4 버젼이지만, The Qt Company는 더이상 Qt v4를 지원하지 않으므로, 새로운 GUI 개발 프로젝트에서는 PyQt5를 고려해 볼 필요가 있다.
PyQt는 오픈소스로서 개인용으로는 무료이지만 상업용으로는 License를 구입해야 한다. 반면, PyQt4와 거의 비슷한 PySide는 오픈소스로서 상업용으로도 무료이다. 하지만, PyQt는 Riverbank에서 지속적으로 관리하는 반면, PySide는 이러한 부분이 소홀한 만큼 상업용 프로젝트를 개발할 때는 이러한 점을 참고하는 것이 좋다.