Os Os desenvolvedores do Qt já lançaram a primeira versão do novo teste de filial Qt 6, em que mudanças arquitetônicas significativas serão propostas e exigirão um compilador que suporte o padrão C ++ 17.
Pela parte das principais mudanças, em primeira instância destaca-se que API de gráficos abstratos autônomos 3D sistema operacional. Este é um componente-chave da nova pilha de gráficos Qt é um mecanismo de renderização de cena que usa a camada RHI (Rendering Hardware Interface) para permitir que os aplicativos Qt Quick funcionem não apenas com OpenGL, mas também em cima de APIs 3D. Vulkan, Metal e Direto.
Para módulo Qt Quick 3D que permite usar QML para definir elementos de interface 3D sem usar o formato UIP, agora um runtime pode ser usado (QtQuick), um layout de cena e um quadro de animaçãoe use o Qt Design Studio para o desenvolvimento visual da interface.
O módulo resolve problemas como alta sobrecarga ao integrar QML com conteúdo do Qt 3D ou 3D Studio, e oferece a capacidade de sincronizar animações e transformações individuais no nível de quadro entre 2D e 3D.
Outra mudança importante é a reestruturação da base de código dividindo-o em componentes menores e reduzindo o tamanho do produto base. Ferramentas de desenvolvedor e componentes especializados serão fornecidos como plug-ins distribuídos por meio do Qt Marketplace.
Além disso, Eu sei que a modernização significativa do QML se destaca:
- Forte suporte de digitação.
- Capacidade de compilar QML em C ++ e código de máquina.
- Transferência de suporte total para JavaScript para a categoria de opções (usar um mecanismo JavaScript completo exige muitos recursos, evitando o uso de QML em equipamentos como microcontroladores).
- Negação de versões em QML.
- Unificação de estruturas de dados que são duplicadas em QObject e QML (Isso reduzirá o consumo de memória e acelerará a inicialização).
- Evite a geração de estruturas de dados em tempo de execução em favor da geração em tempo de compilação.
- Oculte componentes internos usando propriedades e métodos privados.
- Integração aprimorada com ferramentas de desenvolvimento para refatorar e diagnosticar erros durante a compilação.
- adicionar ferramentas para processamento de recursos gráficos na fase de compilaçãoPor exemplo, para converter imagens PNG em texturas compactadas ou para converter sombreadores e malhas em formatos binários otimizados para computadores específicos.
- Incorporando um motor unificado para temas e estilos que permite obter o aparecimento de aplicações baseadas em Qt Widgets e Qt Quick, nativas para diferentes plataformas móveis e desktop.
Além disso, como um sistema de construção, foi decidido usar CMake em vez de QMake. O suporte para a construção de aplicativos com QMake será mantido, mas o Qt será construído usando o CMake.
O CMake foi escolhido porque esse kit de ferramentas foi amplamente usado entre os desenvolvedores de projetos C ++ e é compatível com muitos ambientes de desenvolvimento integrados. A comunidade continua o desenvolvimento do sistema de compilação Qbs, que afirma ser um substituto do QMake.
Transição durante o desenvolvimento para o padrão C ++ 17 (anteriormente usado C ++ 98). Qt 6 planeja implementar suporte para muitos recursos C ++ modernos, mas sem perder a compatibilidade com códigos baseados em padrões mais antigos.
Possibilidade de usar em código C ++ algumas funcionalidades oferecidas para QML e Qt Quick.
Em particular, um novo sistema de propriedade será introduzido para QObject e classes semelhantes. Um mecanismo de ligação do QML será integrado ao núcleo do Qt, reduzindo a carga e o consumo de memória para os ligantes e tornando-os disponíveis para todas as partes do Qt, não apenas para o Qt Quick.
Este lançamento inclui apenas a estrutura inicial da futura versão do Qt 6, que está agendada para 1º de dezembro de 2020.
A funcionalidade no branch Qt 6 será expandida até que o código base congele em 31 de agosto.
fonte: https://www.qt.io
Nossa, isso já me deu vontade de aperfeiçoar meu C ++