Den nye versjonen av QBS 2.0-kompileringssystemet kommer

QbS

Qbs er et fellesskapsdrevet, språkagnostisk byggeautomatiseringssystem. Det er raskt og tilbyr et språk som er lett å lære basert på QML.

Lanseringen av Qbs 2.0, en gratis og åpen kildekode-programvare for håndtering av programvareutviklingsprosessen, ble nylig annonsert . Den ble utviklet for å støtte store og komplekse prosjekter skrevet i ulike programmeringsspråk, primært C/C++.

Den nye versjonen 2.0 har et betydelig versjonsnummer, ettersom den er knyttet til implementeringen av et nytt JavaScript-backend , som erstattet QtScript, som ble foreldet i Qt 6.

For de som ikke er kjent med Qbs, bruker den en forenklet versjon av QML-språket for å definere prosjektbyggeskript, noe som gir mulighet for ganske fleksible byggeregler som kan koble til eksterne moduler, bruke JavaScript-funksjoner og opprette vilkårlige byggeregler.

Qbs er unik ved at den ikke har noen mekanisme for interne bygg, noe som garanterer muligheten til å opprette flere bygg fra et enkelt kildetre, inkludert bygging fra et enkelt kommandoanrop og parallelt.

Dette er en nøkkelfunksjon som sikrer at kildefiler forblir upåvirket hvis en byggekatalog slettes , og at ingen utdataartefakter skrives til kildekatalogen. Qt er nødvendig som en avhengighet for å bygge Qbs, selv om Qbs i seg selv er designet for å organisere sammenstillingen av ethvert prosjekt.

Skriptspråket som brukes i Qbs er skreddersydd for å automatisere generering og parsing av byggeskript av IDEer. Videre genererer ikke Qbs makefiler og, uten mellomledd som make-verktøyet, kontrollerer utgivelsen av kompilatorer og linkere, og optimaliserer byggeprosessen basert på en detaljert graf over alle avhengigheter.

Tilstedeværelsen av innledende data om strukturen og avhengighetene i prosjektet lar deg effektivt parallellisere utførelsen av operasjoner i flere tråder. For store prosjekter som består av et stort antall filer og underkataloger, kan ytelsen til ombygginger ved bruk av Qbs være flere ganger bedre enn make: gjenoppbyggingen er nesten øyeblikkelig og kaster ikke bort utviklertid på å vente.

Hovednyhetene til QBS 2.0

Denne nye utgivelsen av QBS 2.0 er bemerkelsesverdig, som nevnt i begynnelsen, på grunn av den nye JavaScript-motoren som erstatter QtScript, som ble foreldet for Qt 6, siden det ble ansett som urealistisk å fortsette å vedlikeholde QtScript alene på grunn av komplekse bindinger til JavaScriptCore.

Utsiktene til å beholde QtScript med dens komplekse avhengighet virket ikke spesielt tiltalende. Imidlertid tilbød ingen av kandidatene et API for å avskjære eiendomstilgang, noe utviklerne sier de absolutt trenger av ytelsesgrunner.

Fra brukerens synspunkt bør det ikke være noen merkbare endringer; spesielt ser ytelsen ut til å være omtrent den samme. QtScript var imidlertid ganske mild med å akseptere udefinerte verdier i sammenhenger der det ikke var nødvendig, så den nye implementeringen kan avdekke noen feil i prosjektene dine.

Motoren er kompatibel med ES2019-spesifikasjonen og yter betydelig bedre enn sine eksisterende motparter (XS med 35 %, DukTape med mer enn dobbelt så mye, JerryScript med tre ganger så mye og MuJS med sju ganger så mye). Fra et utviklingsperspektiv for byggeskript, bør ikke overgangen til en ny motor føre til noen merkbare endringer.

Ytelsen vil også forbli nesten den samme. Blant forskjellene har den nye motoren strengere krav til bruk av nullverdier, noe som kan avdekke problemer i eksisterende prosjekter som ikke ble lagt merke til ved bruk av QtScript.

I tillegg nevnes det også at qmake-prosjektfiler ble fjernet, noe som resulterte i en reduksjon av vedlikeholdsarbeid for utviklerne.

Til slutt nevnes det at versjon 2.1 vil se en omskrivning av koden som utviklerne antar at de vil ha flere nye funksjoner med, samt generelle ytelsesforbedringer.

Hvis du er interessert i å lære mer, finner du detaljene på lenken nedenfor.


Legg til som foretrukket kilde i Google