Qbs 2.0 հավաքման գործիքի թողարկում

Ներկայացվել է Qbs 2.0 build գործիքի թողարկումը: Qbs կառուցելու համար Qt-ը պահանջվում է որպես կախվածություն, թեև Qbs-ն ինքնին նախատեսված է ցանկացած նախագծի հավաքումը կազմակերպելու համար: Qbs-ն օգտագործում է QML լեզվի պարզեցված տարբերակը՝ նախագծի կառուցման սկրիպտները սահմանելու համար, ինչը թույլ է տալիս սահմանել բավականին ճկուն կառուցման կանոններ, որոնցում կարելի է միացնել արտաքին մոդուլները, կարող են օգտագործվել JavaScript ֆունկցիաները և կարող են ստեղծվել կամայական կառուցման կանոններ:

Qbs-ում օգտագործվող սկրիպտային լեզուն հարմարեցված է IDE-ների կողմից կառուցապատման սցենարների ստեղծումն ու վերլուծումն ավտոմատացնելու համար: Բացի այդ, Qbs-ը չի ստեղծում makefiles, և ինքը, առանց միջնորդների, ինչպիսին է make utility-ը, վերահսկում է կոմպիլյատորների և կապակցիչների գործարկումը՝ օպտիմալացնելով կառուցման գործընթացը՝ հիմնված բոլոր կախվածությունների մանրամասն գրաֆիկի վրա: Նախագծում կառուցվածքի և կախվածությունների վերաբերյալ նախնական տվյալների առկայությունը թույլ է տալիս արդյունավետորեն զուգահեռացնել գործողությունների կատարումը մի քանի թելերով: Մեծ թվով ֆայլերից և ենթադիրեկտորներից բաղկացած խոշոր նախագծերի համար Qbs-ի միջոցով վերակառուցումների կատարումը կարող է մի քանի անգամ գերազանցել արտադրությանը. վերակառուցումը գրեթե ակնթարթային է և չի ստիպում ծրագրավորողին սպասել ժամանակ անցկացնել:

Հիշեցնենք, որ 2018 թվականին Qt ընկերությունը որոշել է դադարեցնել Qbs-ի զարգացումը։ Qbs-ը մշակվել է որպես qmake-ի փոխարինում, սակայն, ի վերջո, որոշվել է երկարաժամկետ հեռանկարում օգտագործել CMake-ը որպես Qt-ի հիմնական կառուցման համակարգ: Qbs-ի զարգացումն այժմ շարունակվել է որպես անկախ ծրագիր, որն աջակցում է համայնքային ուժերին և շահագրգիռ ծրագրավորողներին: Qt ընկերության ենթակառուցվածքը շարունակում է օգտագործվել զարգացման համար:

Տարբերակի համարի զգալի փոփոխությունը կապված է JavaScript-ի նոր հետին պլանի ներդրման հետ, որը փոխարինեց QtScript-ին, որը հնացած էր Qt 6-ում: Անիրատեսական համարվեց շարունակել ինքնուրույն պահել QtScript-ը JavaScriptCore-ի հետ բարդ կապերի պատճառով, հետևաբար, ինքնորոշումը: -բավարար և կոմպակտ մեկը ընտրվել է որպես հիմք նոր Backend QuickJS JavaScript շարժիչի համար, որը ստեղծվել է Ֆաբրիս Բելարդի կողմից, ով հիմնադրել է QEMU և FFmpeg նախագծերը: Շարժիչը աջակցում է ES2019 բնութագրին և էապես գերազանցում է իր գործող գործընկերներին կատարողականությամբ (XS 35%, DukTape ավելի քան երկու անգամ, JerryScript երեք անգամ և MuJS-ը յոթ անգամ):

Բիլդային սցենարների մշակման տեսանկյունից նոր շարժիչի անցումը չպետք է հանգեցնի նկատելի փոփոխությունների։ Կատարումը նույնպես կմնա մոտավորապես նույնը: Տարբերություններից, նոր շարժիչում կան ավելի խիստ պահանջներ զրոյական արժեքների օգտագործման համար, որոնք կարող են բացահայտել առկա նախագծերում առկա խնդիրներ, որոնք աննկատ են մնացել QtScript-ն օգտագործելիս:

Source: opennet.ru

Добавить комментарий