저는 최근에 Qt를 배웠습니다. QML은 UI 구성 요소를 구현하는 데 매우 흥미 롭습니다. 프로젝트가 시작되기 전에 몇 가지 질문이 있습니다.QML 또는 C++로 구현 하시겠습니까?
- 새로운 시작 프로젝트의 경우 QML을 사용해야합니까? QML은 QWidget을 대체 할 수 있습니까?)
- QML을 사용하면 C++로 구현해야하는 것이 있습니까? 또는 더 나은 성능을 위해 C++로 더 잘 구현 되었습니까? (일부 사용자 화 된 UI 컴포넌트가 플러그인을 통해 통합 될 수 있음을 압니다.) QML과 C++ 위젯의 관계는 무엇입니까?
- 성능 또는 렌더링 문제에 관해서는 QML이 네이티브 C++ 위젯보다 뛰어 납니까?
는'QPainter' 스타일의 API를 사용하는 동안 극복 할 수없는 QWidget' 기반 렌더링 '의 성능에 한계가 있습니다. 그것은 많은 사람들이'QPainter' 스타일의 API가 시대에 뒤떨어져서 무한히 익숙하지 않기 때문에 얻지 못하는 것입니다. 초기 버전이 아니라면 1984 년부터 원래 MacOS 버전으로 되돌아갑니다. 그것이 설계되었을 때 현대 GPU는 공상 과학이었습니다. 일반적으로이 API를 잘 수행 할 수있는 방법은 없습니다. 어떤 경우 든 제대로 수행 할 수있는 방법은 있지만 항상 일반화 할 방법은 없습니다. Qt Quick 2의 씬 그래프는 성능면에서는 미래입니다. 그것은 모두 C++입니다! –
일반적으로 QML을 사용하여 GUI를 만들고 JavaScript를 사용하여 빛을 계산하십시오. 계산이나 연산이 복잡하거나 자바 스크립트가 충분하지 않을 때마다 C++을 사용하십시오. 또한 QtQuick 컨트롤을 QML 파일로 사용할 수 있습니다. MVC 접근법은 QML + C++ 응용 프로그램에 적합한 선택입니다. –