E foi lançado o Qt 6.3 com melhorias em módulos, novas funções e muito mais. Confira as novidades dessa importante atualização.
Criado inicialmente pela empresa norueguesa Trolltech, Qt é um framework multiplataforma para desenvolvimento de interfaces gráficas em C++.
Com essa ferramenta é possível desenvolver aplicativos e bibliotecas uma única vez e compilá-los para diversas plataformas, sem que seja necessário alterar o código fonte.
Agora, a Qt Company lançou recentemente a nova versão do framework Qt 6.3, na qual o trabalho continua para estabilizar e aumentar a funcionalidade do branch Qt 6.
Novidades do Qt 6.3
Esta nova versão do Qt 6.3 oferece suporte para Windows 10, macOS 10.14+, bem como muitas distribuições Linux, iOS 13+, Android 6+ (API 23+), webOS, INTEGRITY e QNX.
Nesta nova versão do QT 6.3 no módulo Qt QML é proposta uma implementação experimental do compilador qmltc (compilador de tipo QML), que permite compilar estruturas de objetos QML em classes em C++.
Para usuários comerciais do Qt 6.3, foi preparado o produto Qt Quick Compiler, que, além do QML Type Compiler mencionado acima, inclui o QML Script Compiler, que permite compilar expressões e funções QML em código C++.
Nota-se que no Qt 6.3 o uso do Qt Quick Compiler possibilita aproximar o desempenho de programas baseados em QML de programas nativos, em especial, ao compilar extensões, há uma redução no tempo de inicialização e execução de cerca de 20-35% em comparação para usar a versão interpretada.
Outra mudança que se destaca no Qt 6.3 é que o Qt Quick melhorou o desempenho e a eficiência ao trabalhar com texto.
Por exemplo, problemas com processamento lento e consumo de memória ao passar documentos muito grandes para os componentes Text, TextEdit, TextArea e TextInput foram resolvidos.
Também é observado que um elemento QML ReflectionProbe foi adicionado ao módulo Qt Quick 3D para renderizar reflexões de objetos.
A API de partículas 3D foi estendida para adicionar efeitos a cenas 3D compostas por um grande acúmulo de partículas (fumaça, neblina etc.), além de um novo elemento ResourceLoader que fornece ferramentas para gerenciar recursos no Qt Quick 3D e permite você pré-carregar grandes ativos, como malhas ou texturas, bem como controlar a admissibilidade de baixar ativos que não se enquadram na área visível da cena.
Por outro lado, destaca-se que grande parte das novas funções foram adicionadas ao módulo Qt Core, principalmente relacionadas à expansão das capacidades para processar dados de string e que também foi adicionado suporte para códigos de idioma ISO639-2 para QLocale.
E essas são as outras mudanças que se destacam no Qt 6.3:
- Adicionado suporte para especificadores de hora AM/PM para QDate, QTime e QLocale. Conversão simplificada entre os formatos JSON e CBOR. Adicionados os métodos QtFuture::whenAll() e whenAny().
- Implementado módulo “Qt Language Server” com suporte para os protocolos Language Server e JsonRpc 2.0.
- O módulo Qt Wayland Composer adicionou um servidor composto Qt Shell e uma API para criar suas próprias extensões de shell personalizadas.
- O Qt Quick Controls integra os tipos QML CalendarModel e TreeView com a implementação de interfaces para exibir o calendário e os dados em uma visualização em árvore.
- Adicionados os tipos QML MessageDialog e FolderDialog ao módulo Qt Quick Dialogs para usar as caixas de diálogo do sistema fornecidas pela plataforma para exibir uma mensagem e navegar pelos arquivos.
- Adicionada uma implementação preliminar do módulo Qt PDF, que estava presente no Qt 5.15, mas não incluído no Qt 6.
- O Qt Positioning fornece a capacidade de determinar a precisão dos dados de localização fornecidos pelas plataformas Android e iOS.
- Qt Bluetooth fornece informações sobre compatibilidade com Bluetooth LE e informações de status do adaptador Bluetooth no Windows.
- Qt Widgets melhorou o suporte para telas de alta resolução, estilos e mudanças de estilo usando folhas de estilo.
- Sistema de compilação aprimorado baseado em CMake. Adicionada a função qt-generate-deploy-app-script() para simplificar a geração de scripts para implantação de aplicativos em diferentes plataformas.
- Muito trabalho foi feito para melhorar a estabilidade e a qualidade da base de código. Desde o lançamento do Qt 6.2, 1750 relatórios de bugs foram fechados.
- Finalmente vale a pena mencionar que os próximos grandes lançamentos do Qt 6.x planejam implementar suporte completo para WebAssembly, QHttpServer, gRPC, um backend para Qt Multimedia baseado em FFmpeg, Qt Speech e Qt Location.
Para mais detalhes sobre o lançamento do Qt 6.3 LTS, acesse o Qt.io.