Qbs 2.0 құрастыру құралының шығарылымы

Qbs 2.0 құрастыру құралы шығарылымы енгізілді. Qbs құру үшін Qt тәуелділік ретінде қажет, дегенмен Qbs өзі кез келген жобаларды құрастыруды ұйымдастыруға арналған. Qbs жобаны құрастыру сценарийлерін анықтау үшін QML тілінің жеңілдетілген нұсқасын пайдаланады, бұл сыртқы модульдерді қосуға, JavaScript функцияларын пайдалануға және ерікті құрастыру ережелерін жасауға болатын жеткілікті икемді құрастыру ережелерін анықтауға мүмкіндік береді.

Qbs-те қолданылатын сценарий тілі IDE арқылы құрастыру сценарийлерін генерациялауды және талдауды автоматтандыруға бейімделген. Сонымен қатар, Qbs makefiles жасамайды және өзі make утилитасы сияқты делдалсыз компиляторлар мен сілтемелердің іске қосылуын басқарады, барлық тәуелділіктердің егжей-тегжейлі графигі негізінде құрастыру процесін оңтайландырады. Жобадағы құрылым мен тәуелділіктер туралы бастапқы деректердің болуы бірнеше ағындардағы операциялардың орындалуын тиімді параллельдеуге мүмкіндік береді. Файлдар мен ішкі каталогтардың үлкен санынан тұратын ірі жобалар үшін Qbs көмегімен қайта құру өнімділігі жасаудан бірнеше есе асып түсуі мүмкін - қайта құру бірден дерлік болады және әзірлеушіні күтуге уақыт жұмсамайды.

Еске салайық, 2018 жылы Qt компаниясы Qbs әзірлеуді тоқтату туралы шешім қабылдады. Qbs qmake-ді ауыстыру ретінде әзірленді, бірақ сайып келгенде, CMake-ді Qt үшін негізгі құрастыру жүйесі ретінде ұзақ мерзімді перспективада пайдалану туралы шешім қабылданды. Qbs әзірлеу қазір қауымдастық күштері мен мүдделі әзірлеушілер қолдайтын тәуелсіз жоба ретінде жалғасты. Qt компаниясының инфрақұрылымы даму үшін пайдалануды жалғастыруда.

Нұсқа нөміріндегі елеулі өзгеріс Qt 6-да ескірген QtScript-ті ауыстырған жаңа JavaScript серверін енгізумен байланысты. JavaScriptCore-ға күрделі байланыстыруларға байланысты QtScript-ті өз бетінше жалғастыру шынайы емес деп саналды, сондықтан өздігінен -QEMU және FFmpeg жобаларының негізін қалаған Фабрис Беллард жасаған QuickJS JavaScript жаңа серверінің негізі ретінде жеткілікті және ықшам нұсқасы таңдалды. Қозғалтқыш ES2019 спецификациясын қолдайды және өнімділік бойынша өзінің бар әріптестерінен айтарлықтай асып түседі (XS 35%, DukTape екі еседен астам, JerryScript үш есе және MuJS жеті есе).

Құрастыру сценарийлерінің дамуы тұрғысынан жаңа қозғалтқышқа көшу айтарлықтай өзгерістерге әкелмеуі керек. Өнімділік те шамамен сол күйінде қалады. Айырмашылықтардың ішінде жаңа қозғалтқышта нөлдік мәндерді пайдалану үшін неғұрлым қатаң талаптар бар, олар QtScript пайдалану кезінде байқалмай қалған бар жобалардағы проблемаларды аша алады.

Ақпарат көзі: opennet.ru

пікір қалдыру