La versione stabile di Qt 6.0 è già stata rilasciata

Dopo diversi mesi di sviluppo e diverse versioni di prova, The Qt Company ha lanciato il ramo stabile di Qt 6, che include modifiche architettoniche significative.

La nuova versione afferma di essere compatibile con le piattaforme Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ e Android (API 23+).

Principali novità di QT 6

Delle principali novità che sono stati menzionati e in cui stavano lavorando, uno di questi è l'API grafica astratta che non dipende dall'API 3D sistema operativo. Un componente chiave del nuovo stack grafico Qt è un motore di rendering delle scene che utilizza un livello RHI (Rendering Hardware Interface). per fornire applicazioni Qt Quick non solo con OpenGL, ma anche sulle API Vulkan, Metal e Direct 3D.

È stato elaborato un modulo Qt Quick 3D con API per creare interfacce utente basato su Qt Quick, combinando elementi grafici 2D e 3D. Qt Quick 3D consente di utilizzare QML per definire elementi dell'interfaccia 3D senza utilizzare il formato UIP. In Qt Quick 3D per 2D e 3D, è possibile utilizzare un runtime (Qt Quick), un layout di scena e un fotogramma di animazione e utilizzare Qt Design Studio per lo sviluppo dell'interfaccia visiva.

Il modulo risolve problemi come il pesante sovraccarico di integrazione di QML con contenuti Qt 3D o 3D Studio e offre la possibilità di sincronizzare animazioni e trasformazioni a livello di fotogramma tra 2D e 3D.

Un'altra novità è ristrutturando il codebase è stato effettuato con una scomposizione in parti più piccole e una riduzione delle dimensioni del prodotto di base. Strumenti per sviluppatori e componenti personalizzati sono ora disponibili come componenti aggiuntivi tramite Qt Marketplace.

D'altra parte, possiamo trovarlo un motore di layout e skin sono incorporati unificato per ottenere l'aspetto dei widget Qt nativi e delle applicazioni basate su Qt Quick da diverse piattaforme mobili e desktop.

Qt Quick 6 aggiunge il supporto per gli stili nativi di macOS e Windows (Il supporto per gli stili nativi Material e Fusion per Android e Linux è stato implementato in Qt5). Un'implementazione in stile nativo per iOS è prevista nella prossima significativa versione di Qt.

La funzionalità di supporto della piattaforma precedentemente fornita dai moduli QtX11Extras, QtWinExtras e QtMacExtras è stata spostata nelle API specifiche della piattaforma disponibili direttamente da Qt.

Il Toolkit CMake viene utilizzato come sistema di compilazione invece di QMake. Il supporto per la creazione di applicazioni utilizzando QMake viene mantenuto, ma Qt ora viene creato utilizzando CMake.

Inoltre, è passato durante lo sviluppo allo standard C ++ 17 (in precedenza si utilizzava C ++ 98 e con Qt 5.7 - C ++ 11) ed è stata aggiunta la possibilità di utilizzare in codice C ++ alcune delle funzioni offerte per QML e Qt Quick. Ciò include un nuovo sistema di proprietà per QObject e classi simili.

È stato integrato un motore per lavorare con i collegamenti da QML nel kernel Qt, consentendo di ridurre il carico e il consumo di memoria per i collegamenti e renderli disponibili a tutte le parti di Qt, non solo a Qt Quick.

Del altre modifiche che risaltano:

  • Unificazione delle strutture dati, duplicate in QObject e QML (ridurrà il consumo di memoria e accelererà l'avvio).
  • Evita la generazione di strutture dati in fase di esecuzione a favore della generazione in fase di compilazione.
  • Nascondere i componenti interni utilizzando proprietà e metodi privati.
    Migliore integrazione con gli strumenti di sviluppo per il refactoring in fase di compilazione e la diagnosi dei bug.
  • Sono stati aggiunti strumenti per gestire le risorse relative alla grafica in fase di compilazione, come la conversione di immagini PNG in trame compresse o la conversione di shader e mesh in file binari ottimizzati per hardware specifico.
  • Supporto esteso per linguaggi aggiuntivi come Python e WebAssembly.
  • La gestione delle stringhe e la gestione Unicode sono notevolmente migliorate.
  • Le classi QList e QVector vengono unite, la classe di riepilogo risultante utilizza un modello di contenitore QVector simile a un array.

Infine, si prevede che raggiunga la parità con Qt 5 nel supporto dei sistemi in tempo reale nella versione Qt 6.2.

Il prossimo rilascio significativo di Qt 6.1 è previsto per aprile e Qt 6.2 LTS per settembre 2021.


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.