QT 6 já está disponível para testes – Confira as novidades dessa prévia

QT 6 já está disponível para testes - Confira as novidades dessa prévia
QT 6 já está disponível para testes - Confira as novidades dessa prévia

A Qt Company anunciou que o QT 6 já está disponível para testes. Confira as novidades da prévia desse importante framework multiplataforma.

Qt é um framework multiplataforma para desenvolvimento de interfaces gráficas em C++ criado pela empresa norueguesa Trolltech e usado por importantes softwares de código aberto como o projeto KDE, dentre outros.

Com ele é 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, os desenvolvedores do Qt já lançaram a primeira versão de teste da nova filial do Qt 6, que proporá mudanças significativas na arquitetura e exigirá um compilador que suporte o padrão C++ 17.

Novidades da prévia do QT 6

QT 6 já está disponível para testes – Confira as novidades dessa prévia

Por parte das principais alterações, em primeira instância, destaca-se que a API de gráficos abstratos independe do sistema operacional 3D.

Este é um componente essencial 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 aplicativos Qt Quick funcionem não apenas com o OpenGL, mas também em cima de APIs 3D. Vulkan, Metal e Direct.

Para o módulo Qt Quick 3D que permite usar o QML para definir elementos da interface 3D sem usar o formato UIP, agora você pode usar um tempo de execução (Qt Quick), um layout de cena e um quadro de animação e usar o Qt Design Studio para desenvolvimento visual da interface.

O módulo resolve problemas como altos custos indiretos, integrando o QML ao conteúdo do Qt 3D ou 3D Studio e fornece a capacidade de sincronizar animações e transformações no nível do quadro individual entre 2D e 3D.

Outra mudança importante é reestruturar a base de código, dividindo-a em componentes menores e reduzindo o tamanho do produto base. Ferramentas de desenvolvedor e componentes especializados serão fornecidos como complementos distribuídos pelo Qt Marketplace.

Além disso, sei que se destaca a modernização significativa da QML:

  • Suporte de digitação forte.
  • Capacidade de compilar QML em C++ e código de máquina.
  • Transferir o suporte completo ao JavaScript para a categoria de opção (o uso de um mecanismo JavaScript completo exige muitos recursos, impedindo que o QML seja usado em computadores como microcontroladores).
  • Negação de versões na QML.
  • A unificação de estruturas de dados duplicadas no QObject e QML (reduzirá o consumo de memória e acelerará a inicialização).
  • Evita gerar estruturas de dados em tempo de execução em favor da geração em tempo de compilação.
  • Oculta componentes internos usando propriedades e métodos privados.
  • Integração aprimorada com ferramentas de desenvolvimento para refatorar e diagnosticar erros durante a compilação.
  • Adicionada ferramentas para processar recursos relacionados a gráficos no estágio de compilação, por exemplo, para converter imagens PNG em texturas compactadas ou converter shaders e malhas em formatos binários otimizados para computadores específicos.
  • Incorporando um mecanismo unificado de tema e estilo que permite obter a aparência de aplicativos baseados nos Qt Widgets e Qt Quick, nativos de diferentes plataformas móveis e de desktop.

Além disso, como sistema de construção, foi decidido usar o CMake em vez do QMake. A compatibilidade para criar aplicativos com o QMake será mantida, mas o Qt será criado usando o CMake.

O CMake foi escolhido porque esse kit de ferramentas foi amplamente usado entre os desenvolvedores de projetos em C ++ e é compatível com muitos ambientes de desenvolvimento integrados.

A comunidade continua a desenvolver o sistema de construção Qbs, que alegou ser um substituto para o QMake.

Transição durante o desenvolvimento para o padrão C++ 17 (C ++ 98 usado anteriormente). O Qt 6 planeja implementar o suporte a muitos recursos modernos do C++, mas sem perder a compatibilidade com o código com base nos padrões anteriores.

Possibilidade de usar no código C++ alguns recursos oferecidos para QML e Qt Quick.

Em particular, um novo sistema de propriedades será introduzido para QObject e classes similares.

Um mecanismo de ligação da QML será integrado ao núcleo Qt, o que reduzirá o consumo de carga e memória dos ligantes e os disponibilizará para todas as partes do Qt, não apenas para o Qt Quick.

Esta versão inclui apenas a estrutura inicial da versão futura do Qt 6, programada para 1º de dezembro de 2020.

A funcionalidade na filial Qt 6 será expandida até que a base de código congele em 31 de agosto.

O que está sendo falado no blog

publicado
Categorizado como Arch, bodhi, CentOS, Debian, Deepin, Elementary, Fedora, Gentoo, Kali, Kylin, LFS, Linux, Linux Mint, Mageia, Mandriva, Manjaro, Não categorizado, Notícias, Open Source, OpenMandriva, openSUSE, pclinuxos, Pop!_OS, RedHat, Sabayon, Scientific, slackware, Software livre, Solus, SUSE, Trisquel, Ubuntu, Zorin Marcado com , , , , , , , , ,

Por Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Sair da versão mobile