Qt 6 roadmap fungsi diterbitake

Lars Knoll, pencipta mesin KHTML, manajer proyek Proyek Qt lan direktur teknis Perusahaan Qt, Aku marang bab plans kanggo nggawe cabang pinunjul sabanjuré saka framework Qt. Sawise fungsionalitas cabang Qt 5.14 rampung, pangembangan bakal fokus kanggo nyiapake rilis Qt 6, sing samesthine ing pungkasan taun 2020.

Qt 6 bakal dikembangaké karo mripat kanggo njamin kompatibilitas karo Qt 5, nanging masalah individu bisa njedhul, wiwit owah-owahan arsitektur ngrancang lan ngresiki ora bakal bisa kanggo ngleksanakake tanpa rusak tingkat tartamtu saka kompatibilitas. Kanggo Gamelan transisi, sawetara fitur saka Qt 6 ngrancang kanggo kalebu ing wangun suda minangka bagéan saka Qt 5.14 lan Qt 5.15 LTS rilis. Toolkit uga bakal disiapake kanggo nyederhanakake migrasi menyang Qt 6.

Antarane tujuan utama kanggo cabang penting sabanjure yaiku nggawe fungsi kasebut cocog karo syarat 2020, ngresiki basis kode lan nyederhanakake pangopènan proyek. Owah-owahan sing dikarepake:

  • Modernisasi penting saka QML:
    • Dhukungan ngetik sing kuat.
    • Kemampuan kanggo ngumpulake QML menyang C ++ perwakilan lan kode mesin.
    • Nggawe JavaScript lengkap ndhukung pilihan (nggunakake mesin JavaScript fitur lengkap mbutuhake akeh sumber daya, kang ngalangi nggunakake QML ing peralatan kayata mikrokontroler).
    • Nolak versi ing QML.
    • Manunggalaken struktur data duplikat ing QObject lan QML (bakal nyuda konsumsi memori lan nyepetake wiwitan).
    • Ngalih saka struktur data generasi run-time kanggo nggawe generasi kompilasi.
    • Ndhelikake komponen internal kanthi nggunakake metode lan properti pribadi.
    • Integrasi sing luwih apik karo alat pangembangan kanggo refactoring lan diagnosis kesalahan wektu kompilasi;
  • Nambahake lapisan abstrak anyar, Rendering Hardware Interface (RHI), kanggo nyedhiyani nggunakake rapi saka macem-macem grafis API, kalebu OpenGL, Vulkan, Metal lan Direct 3D (sadurunge Qt ana OpenGL-mung). Kabeh infrastruktur Rendering ana bakal diowahi kanggo nggunakake RHI, kalebu QPainter, Qt Quick Scenegraph lan Qt3D. Uga direncanakake nambah modul Qt Shader Tools kanggo ndhukung macem-macem basa pangembangan shader lan nyedhiyakake kompilasi silang shaders ing tahap mbangun lan nalika runtime;
  • Preparation saka API terpadu kanggo nggawe antarmuka panganggo sing nggabungake unsur grafis 2D lan 3D. API anyar bakal ngidini sampeyan nggunakake QML kanggo nemtokake unsur antarmuka 3D tanpa nggunakake format UIP. Antarmuka anyar kanggo nggabungake isi 3D karo Qt cepet plans kanggo ngatasi masalah kayata nduwur sirah dhuwur nggabungake QML karo isi saka Qt 3D utawa 3D Studio, lan kasekengan kanggo nyinkronake animasi lan transformasi pigura-tingkat antarane 2D lan 3D. Gabungan nested 2D lan 3D Rendering bakal dipun ginakaken nggunakake mesin rendering anyar. A pratinjau saka Qt cepet anyar karo support 3D samesthine ing Qt 5.14 release;
  • Nambahake alat kanggo ngolah aset sing gegandhengan karo grafis ing wektu kompilasi, kayata ngowahi gambar PNG dadi tekstur sing dikompres utawa ngowahi shader lan meshes menyang format binar sing dioptimalake kanggo hardware tartamtu;
  • Semat mesin terpadu kanggo tema lan gaya, ngijini sampeyan kanggo entuk tampilan saka aplikasi adhedhasar Qt Widget lan Qt Cepet, native kanggo platform seluler lan desktop beda;
  • Manunggaling piranti kanggo nggawe antarmuka panganggo. Kanggo ngindhari duplikasi fungsi lan mungkasi pangiriman rong produk sing kapisah, samesthine fungsi Qt 3D Studio bakal digabungake menyang Qt Design Studio, sing akeh subsistem lan kerangka kanggo nyambungake plugin dibangun ing basis kode sing padha. Qt Pencipta.
    Qt Design Studio uga ngrancang nyedhiyakake integrasi kualitas dhuwur karo paket nggawe konten kayata Photoshop, Sketch, Illustrator, Maya lan 3D Max. Basa utama sing didhukung ing toolkit pangembangan terpadu yaiku C ++, QML lan Python. Manunggalaken uga tegese kemampuan kanggo ngakses piranti desain antarmuka saka Qt Creator, lan menehi desainer antarmuka karo kapabilitas saka alat pangembang, Contone, ngumpulake project utawa nyoba aplikasi ing piranti;

  • Sampeyan iki mutusaké kanggo nggunakake CMake tinimbang QMake minangka sistem mbangun. Dhukungan kanggo aplikasi bangunan nggunakake QMake bakal tetep, nanging Qt dhewe bakal dibangun nggunakake CMake. CMake dipilih amarga toolkit iki digunakake akeh ing antarane pangembang proyek C ++ lan didhukung ing akeh lingkungan pangembangan terpadu. Pangembangan sistem perakitan Qbs, sing ngaku minangka pengganti QMake, mandhek;
  • Transisi menyang standar C ++ 17 sajrone pangembangan (sadurunge C ++ 98 digunakake). Qt 6 plans a ngleksanakake support kanggo akeh C modern ++ fitur, nanging tanpa ilang kompatibilitas sakdurunge karo kode adhedhasar standar kepungkur.
  • Kemampuan kanggo nggunakake saka C ++ sawetara fungsi ana kanggo QML lan Qt Cepet. Ing tartamtu, sistem property anyar kanggo QObject lan kelas padha bakal presented. Mesin kanggo nggarap bindings bakal Integrasi saka QML menyang Qt inti, kang bakal nyuda mbukak lan konsumsi memori kanggo bindings lan kasedhiya kanggo kabeh bagean Qt, lan ora mung Qt cepet;
  • Terus kerja kanggo nggedhekake dhukungan kanggo basa tambahan kayata Python lan WebAssembly;
  • Restrukturisasi kanthi ngilangi komponen sing luwih cilik lan nyuda ukuran produk sing ndasari. Piranti pangembang lan komponen khusus bakal diwenehake minangka tambahan sing disebarake liwat toko katalog anyar. Tambahan kanggo Qt saka pangembang pihak katelu, loro gratis lan mbayar, uga bakal ditampa kanggo distribusi.

Source: opennet.ru

Add a comment