Lansarea uneltelor de construire Qbs 2.0

A fost lansată uneltele de construire Qbs 2.0. Pentru a construi Qbs, este necesar Qt ca una dintre dependențe, deși Qbs este proiectat pentru a organiza construcția oricăror proiecte. Qbs folosește o variantă simplificată a limbajului QML pentru a defini scenariile de construcție a proiectului, ceea ce permite definirea unor reguli de construcție suficient de flexibile, în care module externe pot fi incluse, funcții JavaScript pot fi utilizate și reguli de construcție arbitrare pot fi create.

Limbajul de scripting utilizat în Qbs este adaptat pentru automatizarea generării și analizei scripturilor de construire în cadrul mediilor integrate de dezvoltare. În plus, Qbs nu generează fișiere make, ci controlează în mod direct, fără intermediari, cum ar fi utilitarul make, lansarea compilatoarelor și linkerelor, optimizând procesul de construire pe baza unui grafic detaliat al tuturor dependențelor. Disponibilitatea datelor inițiale despre structura și dependențele din proiect permite eficientizarea execuției operațiunilor în paralel. Pentru proiecte mari, formate dintr-un număr mare de fișiere și subdirectoare, performanța recompilării utilizând Qbs poate depăși cu mult făcând-o, recompilarea având loc aproape instantaneu și fără a face ca dezvoltatorul să piardă timp așteptând.

Amintim că, în 2018, compania Qt Company a decis să oprească dezvoltarea Qbs. Qbs a fost dezvoltat ca o alternativă la qmake, dar în cele din urmă s-a decis utilizarea CMake ca sistem de construcție principal pentru Qt pe termen lung. Dezvoltarea Qbs este acum continuată sub forma unui proiect independent, susținut de comunitate și de dezvoltatori interesați. Infrastructura Qt Company este încă folosită pentru dezvoltare.

Modificarea semnificativă a numărului versiunii este legată de implementarea noului backend JavaScript, care a înlocuit QtScript, declarat învechit în Qt 6. Continuarea întreținerii QtScript cu propriile forțe, din cauza legăturilor complicate cu JavaScriptCore, a fost considerată nerealistă, așa că s-a ales un motor JavaScript compact și de sine stătător, QuickJS, creat de Fabrice Bellard, care a fondat la vremea sa proiectele QEMU și FFmpeg. Motorul suportă specificația ES2019 și, din punct de vedere al performanței, depășește în mod semnificativ analogii existenți (XS cu 35%, DukTape de peste două ori, JerryScript de trei ori, iar MuJS de șapte ori).

Din perspectiva dezvoltării scenariilor de construcție, trecerea la noul motor nu ar trebui să ducă la modificări semnificative. Performanța ar trebui să rămână aproximativ la același nivel. Printre diferențe se remarcă cerințele mai stricte ale noului motor în utilizarea valorilor nedefinite, ceea ce poate evidenția probleme în proiectele existente care au rămas neobservate la utilizarea QtScript.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster