Qt 5.15 фреймворк шығарылымы

Жіберген кросс-платформалық негізді шығару Qt 5.15. Qt құрамдастарының бастапқы коды LGPLv3 және GPLv2 лицензиялары бойынша берілген. Qt 6 жаңа филиалы желтоқсанда жарияланады, онда күтілген елеулі архитектуралық өзгерістер. Болашақта Qt 6 тармағына өтуді тегістеу үшін Qt 5.15 кейбір жаңа мүмкіндіктерді алдын ала қарауды қамтиды және Qt 6-да жою жоспарланған функцияның жақын арада ескіруі туралы қосымша ескертулерді қамтиды.

Qt 5.15 Ұзақ мерзімді қолдау (LTS) шығарылымы ретінде жіктеледі. Сонымен қатар, қауымдастық үшін 5.15 филиалына жаңартулар жарияланады тек келесі маңызды мәселе қалыптасқанша, яғни. шамамен алты ай. Үш жылдық кезең ішінде жаңартуларды генерациялауды қамтитын ұзартылған LTS циклі коммерциялық лицензиясы бар пайдаланушылармен шектеледі (тұрақты компаниялар үшін бір әзірлеушіге жылына $ 5508 499 және стартаптар мен шағын бизнес үшін жылына $ XNUMX). Сондай-ақ Qt компаниясы қарастырылады алғашқы 12 айдағы барлық шығарылымдар тек коммерциялық лицензияларды пайдаланушыларға таратылатын Qt тарату үлгісіне ауысу мүмкіндігі. Бірақ әзірге бұл идея талқылаудан ары өткен жоқ.

басты 5.15 Qt инновациялар:

  • Операциялық жүйенің 3D API интерфейсіне тәуелді емес абстракцияланған графикалық API құру бойынша жұмыс жалғасты. Жаңа Qt графикалық стекінің негізгі құрамдас бөлігі Qt Quick қолданбаларын тек OpenGL-пен ғана емес, сонымен қатар Vulkan, Metal және Direct 3D API интерфейстерінің жоғарғы жағында қуаттандыру үшін RHI (Rendering Hardware Interface) қабатын пайдаланатын көріністі көрсету механизмі болып табылады. 5.15-те жаңа графикалық стек «Технологияларды алдын ала қарау» мәртебесі бар опция түрінде ұсынылады.
  • Толық модульді қолдау қамтамасыз етілген Qt Quick 3D, одан эксперименттік даму белгісі алынып тасталды. Qt Quick 3D 2D және 3D графика элементтерін біріктіретін Qt Quick негізінде пайдаланушы интерфейстерін жасау үшін бірыңғай API ұсынады. Жаңа API UIP пішімін пайдаланбай 3D интерфейс элементтерін анықтау үшін QML пайдалануға мүмкіндік береді. Qt Quick 3D жүйесінде 2D және 3D үшін бір орындалу уақытын (Qt Quick), бір көрініс орналасуын және бір анимация құрылымын пайдалануға және көрнекі интерфейсті әзірлеу үшін Qt Design Studio бағдарламасын пайдалануға болады. Модуль Qt 3D немесе 3D Studio мазмұнымен QML біріктіру кезінде үлкен шығындар сияқты мәселелерді шешеді және 2D және 3D арасындағы кадр деңгейінде анимациялар мен түрлендірулерді синхрондау мүмкіндігін қамтамасыз етеді.

    Qt Quick 3D-ге қосылған жаңа мүмкіндіктер өңдеуден кейінгі әсерлерді қолдауды, геометриямен манипуляциялауға арналған C++ API интерфейсін, QQuaternion сыныбына негізделген айналдыру API-ін және нүктелік шамдарды қолдауды қамтиды. Qt Quick 3D әртүрлі мүмкіндіктерін бағалау үшін дайындалған жарықтандыру түрлері мен көздерін қалай өзгертуге болатынын, күрделі үлгілерді пайдалануды, текстураларды, материалдарды өңдеуді және бүркеншіктен қорғауды көрсететін арнайы демонстрациялық қолданба. Бір мезгілде ұсынылған шығу қоршаған орта Qt Quick 1.5D үшін толық қолдауды қамтамасыз ететін Qt Design Studio 3 пайдаланушы интерфейсін жобалау.


  • Qt QML-де жұмыс болды шоғырланған Qt 6-ға дайындық кезінде. Орнату міндетті болып табылатын құрамдас бөліктерде «қажетті» атрибутпен сипаттарды пайдалану мүмкіндігі енгізілді. Qmllint утилитасы QML кодындағы ықтимал мәселелер туралы ескертулерді генерациялауды жақсартты. Кодтау стилі нұсқауларына сәйкес QML кодын пішімдеуді жеңілдететін qmlformat утилитасы қосылды. QML үшін Qt шығарылымымен үйлесімділігі қамтамасыз етілді микроконтроллерлер.
  • Qt Quick бағдарламасында кескін элементіне түс кеңістіктерін қолдау қосылды. Qt Quick Shapes қолданбасына жаңа PathText элементі қосылды.
    Көрсеткіш өңдегішіне cursorShape қасиеті қосылды, оның көмегімен жұмыс үстелі жүйелерінде тінтуір курсорының пішінін өзгертуге болады. TableView негізіндегі кестелерге тік және көлденең тақырыптарды қосуды жеңілдету үшін HeaderView элементі қосылды.

  • Клиенттік терезе безендіру (CSD) қолдауы айтарлықтай жақсартылды, бұл қолданбаға өзінің терезе әшекейлерін анықтауға және терезе тақырыбы жолында реттелетін мазмұнды орналастыруға мүмкіндік береді.
  • Модуль тұрақтандырылды Qt Lottie, ол Adobe After Effects үшін Bodymovin плагинін пайдаланып JSON пішімінде экспортталған графика мен анимацияларды көрсетуге мүмкіндік беретін жетілдірілген QML API ұсынады. QtLottie арқасында дизайнер ыңғайлы қолданбада анимациялық әсерлерді дайындай алады, ал әзірлеуші ​​экспортталған файлдарды QtQuick қолданбасының интерфейсіне тікелей қоса алады. QtLottie анимация, қию, қабаттау және басқа әсерлерді орындауға арналған кірістірілген микро қозғалтқышты қамтиды. Қозғалтқышқа LottieAnimation QML элементі арқылы қол жеткізуге болады, оны QML кодынан кез келген басқа QtQuick элементі сияқты басқаруға болады.
  • Qt WebEngine браузерінің қозғалтқышы код базасына жаңартылды Chromium 80 (5.14 тармағында Chromium 77 қолданылған, қазіргі нұсқасы Chromium 83).
  • Qt 3D модулінде профильдеу және жөндеу құралдары жақсарды.
  • Qt Multimedia көп бетті рендерингке қолдауды қосты.
  • Qt GUI-де кескінді масштабтау және түрлендіру операциялары қазір көптеген жағдайларда көп ағынды болып табылады.
  • Qt Network теңшелетін күту уақыттарын қолдауды қосты және сеанс таңбашалары TLS 1.3 нұсқасында (Сессия билеті, сервер жағында күйді сақтамай сеансты жалғастыруға мүмкіндік береді).
  • std::функциясымен жұмыс істеу үшін Qt Core, QRunnable және QThreadPool қосылды. Әр түрлі платформалардың ерекшеліктерін ескере отырып, элементтерді себетке жылжыту үшін QFile::moveToTrash() жаңа әдісі қосылды.
  • Android үшін Qt қосылды Файлдарды ашу және сақтау үшін жергілікті диалогтарды қолдау.

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

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