Qt를 시작합시다: 네번째 이야기 Qt modules
February 15, 2011 by sabioguru | Comments
Qt는 다들 아시다시피 Object Oriented Programming Toolkit 입니다.
따라서 많은 Object들로 구성되어 있고, 해당 오브젝트들을 어떻게 잘 활용할 수 있느냐가 Application 생산성에 막대한 영향을 끼칠 수 있습니다.
Qt Application 개발시 qmake를 통하여 project를 build한다면 QtCore와 QtGUI 모듈이 Default로 포함됩니다.
다른 말로 표현 하자면 Qt Application 개발 시 자신의 프로젝트 파일(*.pro) 파일에
모듈에 관련된 아무런 추가 삭제를 하지 않으면, 디폴트 모듈로 QtCore 와 QtGUI 모듈이 포함 된다는 뜻입니다.
만일 Widget을 사용하지 않고 Text Based Console Application을 작성한다면
아래와 같이 QT (qmake variable)에서 gui를 빼주면 됩니다.
QT -= gui
반대로 QtWebkit 모듈을 추가 하고 싶다면 아래와 같이 QT(qmake variable)에서 webkit을 더해 주면 됩니다
QT += webkit
소프트웨어 개발 시 사용되는 일반 Qt Module들
QtCore | Default로 포함되는 Qt Module로써 다른 모듈에서 사용되는 non-graphic Core 클래스들 주목해야 할 중요 클래스 QObject와 Event Loop 예) Qt Event Loop, 멀티쓰레드, 파일관련 클래스, 스트링 버퍼 등등 |
QtGui | Default로 포함되는 Qt Module로써 Graphical user interface (GUI) 컴포넌트 QWidget과 같이 직접적으로 UI를 구성하게 되는 클래스들 예) PushButton, Bitmap, Cursor, Image등등 |
QtMultimedia | 로우레벨 멀티미디어 함수들을 지원하는 클래스 모듈 System specific 한 저수준 함수들 |
QtNetwork | 네트워크 프로그래밍에 관련된 클래스 모듈 |
QtOpenGL | OpenGL 지원에 관련된 클래스 모듈 |
QtOpenVG | OpenVG 지원에 관련된 클래스 모듈 |
QtScript | Qt를 통한 Scripting을 지원하는 클래스 모듈 |
QtScriptTools | Qt Script 엔진의 디버깅 클래스 모듈 |
QtSql | SQL을 사용하는 데이타베이스 클래스 모듈 |
QtSvg | SVG 형식의 파일을 지원하는 클래스 모듈 |
QtWebKit | 웹 콘텐츠를 수정하거나 랜더링 하는데 사용되는 클래스 모듈 |
QtXml | XML을 핸들링 하는데 사용되는 클래스 모듈 |
QtXmlPatterns | XQuery & XPath, XML Schema validation등을 지원하는 클래스 모듈 |
QtDeclarative | QML engine, animation 스크립트, dynamic contents 등과의 연결을 지원하는 클래스 모듈 |
Phonon | Multimedia framework 클래스 모듈 Phonon은 하이레벨 멀티미디어 framework로 |
Qt3Support | Qt 3.x대와의 호환성을 지원하는 클래스 모듈 |
Qt Tool과 관련된 모듈들
다른 개발을 위한 모듈들은 QT+=<모듈예약어>를 사용하게 되지만, Qt Tool에 관련된 아래 모듈은
CONFIG+=<모듈예약어>를 사용하게 됩니다.예) CONFIG += help
QtDesigner | Qt Designer 기능 확장을 위한 모듈 |
QtUiTools | Qt Designer 기능 확장을 위한 모듈 Application내에서 Qt Designer form을 핸들링 하기 위한 클래스 모듈 |
QtHelp | 온라인 Help를 위한 클래스 모듈 |
QtTest | 유닛 테스트를 위한 클래스 모듈 |
Unix 개발자를 위한 Qt Module
QtDBus | Unix의 D-Bus 프로토콜을 이용하여 프로세스간 Inter process (IPC)를 지원하는 클래스 모듈 |
Blog Topics:
Comments
Subscribe to our newsletter
Subscribe
Subscribe Newsletter
Try Qt 6.6 Now!
Download the latest release here: www.qt.io/download.
Qt 6.6. is a feature release with focus on improving UX capabilities including responsive UI technology and the Qt Graph module.
We're Hiring
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.