K dispozici je alfa verze Qt 6.0

Společnost Qt oznámil o překladu vlákna Qt 6 do fáze alfa testování. Qt 6 obsahuje významné architektonické změny a ke sestavení vyžaduje kompilátor, který podporuje standard C++17. Uvolnění naplánováno k 1. prosinci 2020.

Klíč Rysy Qt 6:

  • Abstraktní grafické rozhraní API, které je nezávislé na 3D API operačního systému. Klíčovou součástí nového grafického stacku Qt je engine pro vykreslování scén, který využívá vrstvu RHI (Rendering Hardware Interface) k napájení aplikací Qt Quick nejen s OpenGL, ale také nad rozhraními Vulkan, Metal a Direct 3D API.
  • Qt Quick 3D modul s API pro vytváření uživatelských rozhraní založených na Qt Quick, kombinující 2D a 3D grafické prvky. Qt Quick 3D vám umožňuje používat QML k definování prvků 3D rozhraní bez použití formátu UIP. V Qt Quick 3D můžete použít jedno běhové prostředí (Qt Quick), jedno rozvržení scény a jeden animační rámec pro 2D a 3D a použít Qt Design Studio pro vývoj vizuálního rozhraní. Modul řeší problémy, jako je velká režie při integraci QML s obsahem z Qt 3D nebo 3D Studio, a poskytuje možnost synchronizovat animace a transformace na úrovni snímků mezi 2D a 3D.
  • Restrukturalizace kódové základny na menší komponenty a zmenšení velikosti základního produktu. Vývojářské nástroje a specializované komponenty budou poskytovány jako doplňky distribuované prostřednictvím obchodu s katalogy Qt Marketplace.
  • Významná modernizace QML:
    • Silná podpora psaní.
    • Schopnost zkompilovat QML do reprezentace C++ a strojového kódu.
    • Plná podpora JavaScriptu jako možnost (použití plnohodnotného JavaScriptového enginu vyžaduje mnoho zdrojů, což brání použití QML na zařízení, jako jsou mikrokontroléry).
    • Odmítnutí verzování v QML.
    • Sjednocení datových struktur duplikovaných v QObject a QML (sníží spotřebu paměti a zrychlí spouštění).
    • Odklon od generování datových struktur za běhu ve prospěch generování v době kompilace.
    • Skrytí vnitřních komponent pomocí soukromých metod a vlastností.
    • Vylepšená integrace s vývojovými nástroji pro refaktoring a diagnostiku chyb v době kompilace.
  • Přidání nástrojů pro zpracování aktiv souvisejících s grafikou v době kompilace, jako je převod obrázků PNG na komprimované textury nebo převod shaderů a sítí do optimalizovaných binárních formátů pro konkrétní hardware.
  • Vložení jednotného enginu pro motivy a styly, které vám umožní dosáhnout vzhledu aplikací založených na Qt Widgetech a Qt Quick, nativních pro různé mobilní a desktopové platformy.
  • Bylo rozhodnuto použít CMake místo QMake jako systém sestavení. Podpora pro vytváření aplikací pomocí QMake zůstane, ale samotné Qt bude vytvořeno pomocí CMake. CMake byl vybrán, protože tato sada nástrojů je široce používána mezi vývojáři projektů C++ a je podporována v mnoha integrovaných vývojových prostředích. Vývoj montážního systému Qbs, který tvrdil, že je náhradou za QMake, pokračoval společenství.
  • Přechod na standard C++17 během vývoje (dříve se používal C++98). Qt 6 plánuje implementovat podporu mnoha moderních funkcí C++, ale bez ztráty zpětné kompatibility s kódem založeným na minulých standardech.
  • Schopnost používat některé funkce nabízené pro QML a Qt Quick v kódu C++. Bude představen nový systém vlastností pro QObject a podobné třídy. Od QML bude do jádra Qt integrován engine pro práci s vazbami, který sníží zátěž a spotřebu paměti pro vazby a zpřístupní je všem částem Qt, nejen Qt Quick.
  • Rozšířená podpora pro další jazyky, jako je Python a WebAssembly.
  • Zdroj: opennet.ru

Přidat komentář