Page 778 - 3-3
P. 778

따라서 Qt    는 플랫폼에 의존적인 코드를 거의 사용하지 않았으므로 서로 다른 플랫폼으로
                       이식하는 것이 쉬웠다 하지만 이 방법은 서로 다른 플랫폼의 모습을 정교하게 따라하도록.
                       해야 하는 것이다 최근 버전의.             Qt 는 서로 다른 플랫폼의 자체 API           를 사용해서 Qt      컨트롤
                       을 그리므로 최근의 Qt         에는 적용되지 않는다. wxWidgets            같은 다른 플랫폼에 의존하는
                       함수를 사용하는 그래픽 툴킷들은 그 나름대로의 디자인을 가지고 있다.


                       메타 오브젝트 컴파일러
                       약칭 "moc"    로 알려져 있는 이 프로그램은 Qt             에서 사용되고 있는 비표준적인 메타데이터
                       들을 처리하기 위한 도구이다 일례로.                 Qt 에서 사용하고 있는 이벤트 처리방식인 시그널-
                       슬롯 방식은 표준 C++          처리방식이 아니다.


                       이러한 비표준적인 방식을 사용하는 것에 대해 기존의 C++                           사용자들의 비판이 일었다.
                       또한 매크로를 기반으로 한 구현은 타입 안전성과 네임스페이스 오염을 유발할 수 있다고,
                       한다.


                       하지만 이러한 비판에 트롤텍은 Qt              의 첫 출시될 당시에는 템플릿 구현에 있어서 컴파일러
                       간에 차이가 있었을 뿐 아니라 시그널 슬롯의 동적생성 및-                        RTTI 에 있어서 이러한 구조를
                       사용할 필요가 있다고 주장했다.


                   - PyQt














                     PyQt 란 Riverbank Computing Limited   에서 제공하는 Python        라이브러리로, Qt      에서 제공하
                   는 Qt   어플리케이션 프레임워크를 Python             에서 사용 가능하도록 만든 API             이다. PyQt5   는 Qt
                   v5 를 지원하고, PyQt4     는 Qt v4  를 지원한다 현재.        Qt v4 의 지원이 종료되었으므로 새로운 개,
                   발을 위해서는 PyQt5       를 사용하는 것이 강력히 추천된다. Qt              의 모든 기능을 지원하며, 1,000          개
                   이상의 클래스들로 구성되었다.


                     PyQt 는 지원되는 모든 환경에서 GNU GPL v3               과 Riverbank Commercial   의 이중 라이선스
                   를 가진다. Qt    와 다르게, PyQt    는 LGPL    환경 하에서 사용이 불가능하다.


                   PyQt 를 사용하는 이유
                     PyQt 는 Qt C ++    교차 플랫폼 응용 프로그램 프레임워크와 교차 플랫폼 해석 언어 Python
                   을 동시 지원한다. Qt       는 프로그래밍 언어라기보단 하나의 GUI Toolkit                에 가깝다 이에는 추상.
                   화된 네트워크 소켓 스레드 유니코드 정규식,  ,         ,       , SQL  데이터베이스, SVG, OpenGL, XML,          완
                   전한 기능의 웹 브라우저 도움말 시스템 멀티미디어 프렘워크 및 다양한,  ,                            GUI  컬렉션이 포합
                   된다 이를 더욱 효율적으로 사용하기 위해.                   Python 을 결합한 PyQt    를 사용하게 되었다. PyQt
                   는 Qt 와 Python  의 모든 장점을 결합해 Qt         의 모든 기능들을 가지고 있지만 Python              의 단순성으
                   로 이를 활용할 수 있다 그 외에도 잘 정리되어 있는 엄청난 양의 문서 기본 내장 디자이너.                 ,                  ,
                   OS  호환성 등 다양한 장점들을 갖고 있다.


                                                        - 778 -
   773   774   775   776   777   778   779   780   781   782   783