Alpha weergawe van Qt 6.0 beskikbaar

Qt Maatskappy aangekondig oor die vertaling van die draad Qt 6 na die alfa-toetsstadium. Qt 6 sluit beduidende argitektoniese veranderinge in en vereis 'n samesteller wat die C++17-standaard ondersteun om te bou. Vrylating beplan vanaf 1 Desember 2020.

Sleutel kenmerke Qt 6:

  • 'n Geabstraheerde grafiese API wat onafhanklik is van die bedryfstelsel se 3D API. 'n Sleutelkomponent van die nuwe Qt-grafiese stapel is die toneelweergawe-enjin, wat die RHI (Rendering Hardware Interface)-laag gebruik om Qt Quick-toepassings nie net met OpenGL aan te dryf nie, maar ook bo-op die Vulkan, Metal en Direct 3D API's.
  • Qt Quick 3D-module met API vir die skep van gebruikerskoppelvlakke gebaseer op Qt Quick, wat 2D- en 3D-grafiese elemente kombineer. Qt Quick 3D laat jou toe om QML te gebruik om 3D-koppelvlakelemente te definieer sonder om die UIP-formaat te gebruik. In Qt Quick 3D kan jy een looptyd (Qt Quick), een toneeluitleg en een animasieraamwerk vir 2D en 3D gebruik, en Qt Design Studio gebruik vir visuele koppelvlakontwikkeling. Die module los probleme op soos groot bokoste wanneer QML geïntegreer word met inhoud van Qt 3D of 3D Studio, en bied die vermoë om animasies en transformasies op die raamvlak tussen 2D en 3D te sinchroniseer.
  • Herstrukturering van die kodebasis in kleiner komponente en vermindering van die grootte van die basisproduk. Ontwikkelaarnutsgoed en gespesialiseerde komponente sal verskaf word as byvoegings wat deur die kataloguswinkel versprei word Qt Marketplace.
  • Beduidende modernisering van QML:
    • Sterk tikondersteuning.
    • Vermoë om QML saam te stel in C++ voorstelling en masjienkode.
    • Om volledige JavaScript-ondersteuning 'n opsie te maak (om 'n volledige JavaScript-enjin te gebruik, verg baie hulpbronne, wat die gebruik van QML op toerusting soos mikrobeheerders verhoed).
    • Weiering van weergawe in QML.
    • Eenwording van datastrukture gedupliseer in QObject en QML (sal geheueverbruik verminder en opstart bespoedig).
    • Wegbeweeg van run-time generering van datastrukture ten gunste van samestelling-tyd generering.
    • Versteek interne komponente deur die gebruik van private metodes en eienskappe.
    • Verbeterde integrasie met ontwikkelingsinstrumente vir herfaktorering en samestelling-tyd foutdiagnose.
  • Voeg gereedskap by om grafiese verwante bates te verwerk tydens samestelling, soos die omskakeling van PNG-beelde in saamgeperste teksture of die omskakeling van shaders en maas in geoptimaliseerde binêre formate vir spesifieke hardeware.
  • Die inbedding van 'n verenigde enjin vir temas en style, sodat jy die voorkoms van toepassings kan verkry wat gebaseer is op Qt Widgets en Qt Quick, inheems aan verskillende mobiele en rekenaarplatforms.
  • Daar is besluit om CMake in plaas van QMake as die boustelsel te gebruik. Ondersteuning vir die bou van toepassings met QMake sal behoue ​​bly, maar Qt self sal met CMake gebou word. CMake is gekies omdat hierdie gereedskapstel wyd gebruik word onder C++-projekontwikkelaars en in baie geïntegreerde ontwikkelingsomgewings ondersteun word. Ontwikkeling van die Qbs-samestellingstelsel, wat beweer het dat dit 'n plaasvervanger vir QMake is, voortgesit gemeenskap.
  • Oorgang na die C++17-standaard tydens ontwikkeling (voorheen is C++98 gebruik). Qt 6 beplan om ondersteuning vir baie moderne C++-kenmerke te implementeer, maar sonder om terugwaartse versoenbaarheid te verloor met kode gebaseer op verouderde standaarde.
  • Die vermoë om sommige van die funksies wat vir QML en Qt Quick in C++-kode aangebied word, te gebruik. Insluitend 'n nuwe eiendomstelsel vir QObject en soortgelyke klasse sal aangebied word. Vanaf QML sal 'n enjin vir die werk met bindings in die Qt-kern geïntegreer word, wat die las en geheueverbruik vir bindings sal verminder en dit beskikbaar sal stel aan alle dele van Qt, en nie net Qt Quick nie.
  • Uitgebreide ondersteuning vir bykomende tale soos Python en WebAssembly.
  • Bron: opennet.ru

Voeg 'n opmerking