몇 달의 개발과 여러 평가판을 거쳐 Qt Company는 Qt 6의 안정적인 지점을 출시했습니다. 여기에는 중요한 아키텍처 변경이 포함됩니다.
새 버전은 Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ 및 Android (API 23+) 플랫폼과 호환된다고 주장합니다.
QT 6의 주요 참신함
주요 참신 중 언급되고 그들이 일하고 있던 그중 하나는 3D API에 의존하지 않는 추상화 된 그래픽 API입니다. 운영 체제. 새로운 Qt 그래픽 스택의 핵심 구성 요소는 RHI (Rendering Hardware Interface) 레이어를 사용하는 장면 렌더링 엔진입니다. OpenGL뿐만 아니라 Qt Quick 애플리케이션을 제공하기 위해 Vulkan, Metal 및 Direct 3D API에서도 마찬가지입니다.
정교 해졌습니다 사용자 인터페이스를 생성하기위한 API가있는 Qt Quick 3D 모듈 2D 및 3D 그래픽 요소를 결합한 Qt Quick을 기반으로합니다. Qt Quick 3D를 사용하면 UIP 형식을 사용하지 않고도 QML을 사용하여 3D 인터페이스 요소를 정의 할 수 있습니다. 3D 및 2D 용 Qt Quick 3D에서 런타임 (Qt Quick), 장면 레이아웃 및 애니메이션 프레임을 사용하고 시각적 인터페이스 개발을 위해 Qt Design Studio를 사용할 수 있습니다.
이 모듈은 QML을 Qt 3D 또는 3D Studio 콘텐츠와 통합하는 과도한 오버 헤드와 같은 문제를 해결하고 2D와 3D 간의 프레임 수준 애니메이션 및 변환을 동기화하는 기능을 제공합니다.
또 다른 참신함은 코드베이스 재구성 더 작은 부분으로 분해하여 수행되었으며 기본 제품의 크기 감소. 개발자 도구 및 사용자 지정 구성 요소는 이제 Qt Marketplace를 통해 추가 기능으로 사용할 수 있습니다.
반면에 우리는 레이아웃 엔진과 스킨이 통합되었습니다. 기본 Qt 위젯 및 Qt Quick 기반 애플리케이션의 모양과 느낌을 얻기 위해 통합 다양한 모바일 및 데스크톱 플랫폼에서.
Qt Quick 6은 기본 macOS 및 Windows 스타일에 대한 지원을 추가합니다. (Android 및 Linux 용 기본 Material 및 Fusion 스타일에 대한 지원은 Qt5에서 구현되었습니다). iOS를위한 네이티브 스타일 구현은 Qt의 다음 중요한 릴리스에서 예상됩니다.
이전에 QtX11Extras, QtWinExtras 및 QtMacExtras 모듈에서 제공했던 플랫폼 지원 기능은 Qt에서 직접 사용할 수있는 플랫폼 별 API로 이동되었습니다.
툴킷 CMake는 빌드 시스템으로 사용됩니다. QMake 대신. QMake를 사용한 애플리케이션 빌드에 대한 지원은 유지되지만 Qt는 이제 CMake를 사용하여 빌드됩니다.
또한, 개발 중에 C ++ 17 표준으로 전환 (이전에는 C ++ 98이 사용되었고 Qt 5.7-C ++ 11과 함께) QML 및 Qt Quick에 제공되는 일부 기능을 C ++ 코드에서 사용할 수있는 기능이 추가되었습니다. 여기에는 QObject 및 유사한 클래스에 대한 새로운 속성 시스템이 포함됩니다.
QML의 링크와 함께 작동하도록 엔진이 통합되었습니다. Qt 커널에서 링크에 대한로드 및 메모리 소비를 줄이고 Qt Quick뿐만 아니라 Qt의 모든 부분에서 사용할 수 있습니다.
의 눈에 띄는 기타 변경 사항 :
- QObject 및 QML에서 복제 된 데이터 구조의 통합 (메모리 소비를 줄이고 시작 속도를 높임).
- 컴파일 타임에 생성하기 위해 런타임에 데이터 구조 생성을 피하십시오.
- 개인 속성 및 메서드를 사용하여 내부 구성 요소를 숨 깁니다.
컴파일 타임 리팩토링 및 버그 진단을위한 개발 도구와의 통합이 개선되었습니다. - PNG 이미지를 압축 된 텍스처로 변환하거나 셰이더와 메시를 특정 하드웨어에 최적화 된 바이너리로 변환하는 등 컴파일 타임 그래픽 관련 리소스를 처리하는 도구가 추가되었습니다.
- Python 및 WebAssembly와 같은 추가 언어에 대한 확장 된 지원.
- 문자열 처리 및 유니 코드 처리가 크게 향상되었습니다.
- QList 및 QVector 클래스가 병합되고 결과 요약 클래스는 배열과 유사한 QVector 컨테이너 모델을 사용합니다.
마지막으로, Qt 5와 동등한 수준에 도달 할 것으로 예상됩니다. 시스템 지원 버전 Qt 6.2에서 실시간으로.
Qt 6.1의 다음 중요한 릴리스는 6.2 월에, Qt 2021 LTS는 XNUMX 년 XNUMX 월에 출시 될 예정입니다.