Qbs 2.0 kokoonpanotyökalun vapautus

Qbs 2.0 -koontityökalun julkaisu esitelty. Qbs:n rakentamiseen tarvitaan Qt riippuvuutena, vaikka itse Qbs on suunniteltu järjestämään minkä tahansa projektin kokoonpano. Qbs käyttää yksinkertaistettua versiota QML-kielestä projektien koontiskriptien määrittämiseen, mikä mahdollistaa melko joustavien koontisääntöjen määrittämisen, joihin voidaan liittää ulkoisia moduuleja, käyttää JavaScript-funktioita ja luoda mielivaltaisia ​​koontisääntöjä.

Qbs:ssä käytetty komentosarjakieli on mukautettu automatisoimaan IDE:iden koontiskriptien luominen ja jäsentäminen. Lisäksi Qbs ei luo make-tiedostoja, ja itse ilman välittäjiä, kuten make-apuohjelmaa, hallitsee kääntäjien ja linkittäjien käynnistystä optimoiden koontiprosessin yksityiskohtaisen kaavion perusteella kaikista riippuvuuksista. Alkutietojen läsnäolo projektin rakenteesta ja riippuvuuksista antaa sinun rinnastaa toimintojen suorittamisen tehokkaasti useissa säikeissä. Suurissa projekteissa, jotka koostuvat suuresta määrästä tiedostoja ja alihakemistoja, uudelleenrakennussuorituskyky Qbs:llä voi olla useita kertoja parempi kuin make - uusinta on lähes välitön, eikä kehittäjä joudu odottamaan aikaa.

Muista, että vuonna 2018 Qt-yhtiö päätti lopettaa Qb:n kehittämisen. Qbs kehitettiin korvaamaan qmake, mutta lopulta päätettiin käyttää CMakea Qt:n päärakennusjärjestelmänä pitkällä aikavälillä. Qbs:n kehittäminen on nyt jatkunut itsenäisenä projektina yhteisön voimien ja kiinnostuneiden kehittäjien tukemana. Qt Companyn infrastruktuuria käytetään edelleen kehittämiseen.

Merkittävä muutos versionumerossa liittyy uuden JavaScript-taustajärjestelmän käyttöönottoon, joka korvasi Qt 6:ssa vanhentuneen QtScriptin. QtScriptin ylläpitämistä yksinään pidettiin epärealistisena monimutkaisten JavaScriptCore-sidosten vuoksi. -riittävä ja kompakti valittiin pohjaksi QEMU- ja FFmpeg-projektit perustaneen Fabrice Bellardin luomalle uudelle taustajärjestelmälle QuickJS JavaScript-moottorille. Moottori tukee ES2019-spesifikaatiota ja ylittää huomattavasti nykyiset kollegansa suorituskyvyltään (XS 35, DukTape yli kaksi kertaa, JerryScript kolme kertaa ja MuJS seitsemän kertaa).

Rakennusskriptien kehittämisen kannalta uuteen moottoriin siirtymisen ei pitäisi johtaa havaittaviin muutoksiin. Myös suorituskyky pysyy suunnilleen samana. Eroista uudessa moottorissa on tiukemmat vaatimukset nolla-arvojen käytölle, mikä voi paljastaa ongelmia olemassa olevissa projekteissa, jotka jäivät huomaamatta QtScriptiä käytettäessä.

Lähde: opennet.ru

Lisää kommentti