Представлена компания Qt Недавно я опубликовал новую версию фреймворка кв. 6.3, в котором продолжается работа по стабилизации и увеличению функциональности ветки Qt 6.
Эта новая версия Qt 6.3 обеспечивает поддержку Windows 10, macOS 10.14+, а также многих дистрибутивов Linux, iOS 13+, Android 6+ (API 23+), webOS, INTEGRITY и QNX.
Основные новые функции Qt 6.3
В этой новой версии QT 6.3 предлагается экспериментальная реализация в модуле Qt QML из компилятора qmltc (компилятор типа QML), который позволяет компилировать структуры объектов QML в классы на C++.
Для бизнес-пользователей из Qt 6.3, Подготовлен продукт Qt Quick Compiler, который, помимо упомянутого выше компилятора типов QML, включает в себя компилятор сценариев QML, позволяющий компилировать выражения и функции QML в код C++. Отмечается, что использование Qt Quick Compiler позволяет приблизить производительность QML-программ к нативным программам, в частности, при компиляции расширений наблюдается сокращение времени запуска и выполнения примерно на 20-35% в сравнения, чтобы использовать интерпретированную версию.
Еще одно важное изменение: Qt Quick имеет улучшенную производительность и эффективность при работе с текстом. Например, были решены проблемы с медленной обработкой и потреблением памяти при передаче очень больших документов в компоненты Text, TextEdit, TextArea и TextInput.
Также подчеркивается, что добавлен элемент QML ReflectionProbe в модуль Qt Quick 3D изображать отражения предметов. API 3D Particles был расширен для добавления эффектов к 3D-сценам, состоящим из большого скопления частиц (дым, туман и т. д.), в дополнение к реализован новый элемент ResourceLoader, который предоставляет инструменты для управления ресурсами в Qt Quick 3D и позволяет предварительно загружать большие ресурсы вроде мешей или текстур, а также контролировать допустимость загрузки ресурсов, не попадающих в видимую область сцены.
Кроме того, отмечается, что в модуль Qt Core добавлено много новых возможностей, в основном связанные с расширением возможностей обработки строковых данных, а также добавлением в QLocale поддержки языковых кодов ISO639-2.
Из других изменений которые выделяются из этой новой версии:
- Добавлена поддержка спецификаторов времени AM/PM для QDate, QTime и QLocale. Упрощенное преобразование между форматами JSON и CBOR. Добавлены методы QtFuture::whenAll() и whenAny().
- Реализован модуль "Qt Language Server" с поддержкой протоколов Language Server и JsonRpc 2.0.
- В модуль Qt Wayland Composer добавлен композитный сервер Qt Shell и API для создания собственных расширений оболочки.
- Qt Quick Controls интегрирует QML-типы CalendarModel и TreeView с реализацией интерфейсов для отображения календаря и данных в виде дерева.
- В модуль Qt Quick Dialogs добавлены типы QML MessageDialog и FolderDialog для использования предоставляемых платформой системных диалогов для отображения сообщений и навигации по файлам.
- Добавлена предварительная реализация модуля Qt PDF, который присутствовал в Qt 5.15, но не был включен в Qt 6.
- Qt Positioning позволяет определять точность данных о местоположении, предоставляемых платформами Android и iOS.
- Qt Bluetooth предоставляет информацию о совместимости Bluetooth LE и информацию о состоянии адаптера Bluetooth в Windows.
- В Qt Widgets улучшена поддержка дисплеев с высоким разрешением, стилей и изменений стилей с использованием таблиц стилей.
- Улучшенная система сборки на основе CMake. Добавлена функция qt-generate-deploy-app-script() для упрощения генерации скриптов для развертывания приложений на разных платформах.
- Проделана большая работа по повышению стабильности и качества кодовой базы. С момента выпуска Qt 6.2 было закрыто 1750 отчетов об ошибках.
Наконец, стоит упомянуть, что в следующих крупных выпусках Qt 6.x планируется реализовать полную поддержку WebAssembly, QHttpServer, gRPC, бэкэнд для Qt Multimedia на основе FFmpeg, Qt Speech и Qt Location.
Если вы хотите узнать больше об этом, вы можете проверить подробности По следующей ссылке.