Qt 5.14 շրջանակի և Qt Creator 4.11.0 մշակման միջավայրի թողարկում

Զարգացման վեց ամիս հետո պատրաստված միջպլատֆորմային շրջանակի թողարկում Qt 5.14. Qt բաղադրիչների սկզբնական կոդը լիցենզավորված է LGPLv3 և GPLv2, Qt մշակողների գործիքներով, ինչպիսիք են Qt Creator-ը և qmake-ը, իսկ որոշ մոդուլներ լիցենզավորված են GPLv3-ի ներքո: Qt 5.14-ի թողարկումը նշանավորեց Qt 6 մասնաճյուղի պատրաստման սկիզբը, որում ակնկալվում է զգալի ճարտարապետական ​​փոփոխություններ. Qt 6-ը նախատեսված է հաջորդ տարեվերջին, և նոր ճյուղին անցումը հարթելու համար որոշվել են որոշ նորամուծությունների նախնական իրականացումներ՝ ներառել Qt 5.14 և Qt 5.15 LTS թողարկումներում։

Հիմնական նորամուծություններ:

  • Qt Quick-ը սկսել է աշխատել գրաֆիկական API-ի տրամադրման վրա, որն անկախ է օպերացիոն համակարգի 3D API-ից: Qt 5.14-ում առաջարկված տեսարանների վերարտադրման նոր շարժիչի նախնական ներդրում, օգտագործելով նոր RHI (Rendering Hardware Interface) շերտը, որը հնարավորություն կտա Qt Quick հավելվածներին աշխատել ոչ միայն OpenGL-ի վերևում, ինչպես մինչ այժմ էր, այլ նաև օգտագործելով Vulkan, Metal և Direct 3D 11: Նոր շարժիչը ներկայումս առաջարկվում է Qt 6-ին անցման համար հավելվածներ պատրաստելու տարբերակի տեսքով, որում RHI-ն կօգտագործվի գրաֆիկական ելքի համար լռելյայնորեն:
  • Կիրառվել է Qt Quick Timeline մոդուլը, որն ավելի հեշտ է դարձնում հատկությունների աշխուժացումը՝ օգտագործելով ժամանակացույցը և հիմնական կադրերը: Մոդուլը բխում է Qt Design Studio-ի մշակման միջավայրից, որն ապահովում է ժամանակացույցի վրա հիմնված խմբագիր՝ առանց կոդ գրելու անիմացիաներ ստեղծելու համար:
  • Ավելացվեց փորձարարական մոդուլ Qt Quick 3D, որն ապահովում է միասնական API՝ Qt Quick-ի վրա հիմնված օգտատերերի միջերեսներ ստեղծելու համար, որոնք համատեղում են 2D և 3D գրաֆիկական տարրերը։ Նոր API-ն թույլ է տալիս օգտագործել QML՝ 3D ինտերֆեյսի տարրերը սահմանելու համար՝ առանց UIP ձևաչափի օգտագործման: Մոդուլը լուծում է այնպիսի խնդիրներ, ինչպիսիք են մեծ ծախսերը, երբ QML-ն ինտեգրում է Qt 3D կամ 3D Studio-ի բովանդակությանը, և ապահովում է անիմացիաները և փոխակերպումները 2D-ի և 3D-ի շրջանակի մակարդակում համաժամեցնելու հնարավորություն: Qt Quick 3D-ում դուք կարող եք օգտագործել մեկ գործարկման ժամանակ (Qt Quick), մեկ տեսարանի դասավորություն և մեկ անիմացիոն շրջանակ 2D-ի և 3D-ի համար, և օգտագործել Qt Design Studio-ն տեսողական ինտերֆեյսի մշակման համար:
  • Ավելացվեց WheelHandler-ը՝ մկնիկի անիվի իրադարձությունների մշակիչ, ինչպես նաև անիվի համար նախատեսված իրադարձություններ, որոնք նմանակվում են սենսորային վահանակի միջոցով:
  • Աշխատանքները շարունակվում են բարձր պիքսելային խտությամբ էկրանների կատարողականությունը բարելավելու ուղղությամբ: Ներառյալ կոտորակային մասշտաբային գործոնները նշելու ունակությունը:
  • Ավելացվել է պատկերների համար գունային տարածություններ ավելացնելու հնարավորությունը, որը թույլ է տալիս հասնել ճիշտ գունային վերարտադրության՝ չափաչափված մոնիտորների վրա պատկերներ ցուցադրելիս:
  • Ավելացվեց QColorConstants անվանումների տարածքը, որը կոմպիլյացիայի ժամանակ թույլ է տալիս ստեղծել QColor դասի օրինակներ նախապես սահմանված գունապնակով:
  • Markdown-ի ընթերցման և գրելու աջակցությունն ավելացվել է Qt Widgets և Qt Quick բաղադրիչներին՝ տեքստային խմբագրիչներ ստեղծելու համար:
  • QCalendar API-ն իրականացնում է Գրիգորյանից բացի այլ օրացույցների հետ աշխատելու հնարավորություն:
  • Android-ի համար աջակցություն է ավելացվել բազմակի ABI-ներ ընդգրկող հավաքների համար, ինչը թույլ է տալիս միանգամից տարբեր ճարտարապետությունների համար հավելված կազմել: Ավելացվել է նաև AAB փաթեթի ձևաչափի աջակցությունը, որը թույլ է տալիս հավելվածները տրամադրել բոլոր աջակցվող ճարտարապետությունների համար մեկ արխիվում:
  • Իրականացվել է Qt 3D մոդուլի աշխատանքի օպտիմալացում, ներառյալ արդիականացված աշխատանքը թելերի, շրջանակային բուֆերային օբյեկտների և ծանուցման համակարգի հետ: Արդյունքում հնարավոր եղավ նվազեցնել պրոցեսորի բեռը շրջանակ նկարելիս և բարձրացնել վազող թելերի միջև համաժամացման արդյունավետությունը:
  • API-ները ավելացվել են Qt Network մոդուլին՝ HTTP/2 պարամետրերը կարգավորելու և ցանցային կապը վերահսկելու համար:
  • Qt WebEngine վեբ շարժիչը թարմացվել է Chromium 77-ով և ընդլայնվել նոր API-ով՝ QWebEnginePage օբյեկտի կյանքի ցիկլը կառավարելու համար:
  • Qt Wayland Compositor, Qt Application Manager և Qt PDF բաղադրիչների լիցենզիա փոխվել է LGPLv3-ից մինչև GPLv3, այսինքն. Այս բաղադրիչների նոր թողարկումների հետ կապվելու համար այժմ անհրաժեշտ է բացել GPLv3-ի հետ համատեղելի լիցենզիաների ներքո գտնվող ծրագրերի սկզբնական կոդը կամ գնել առևտրային լիցենզիա (LGPLv3-ը թույլ է տալիս կապվել սեփականության կոդով):

Միաժամանակ ձեւավորվել է IDE թողարկում Qt Ստեղծող 4.11.0, որը նախատեսված է ստեղծելու միջպլատֆորմային հավելվածներ՝ օգտագործելով Qt գրադարանը։ Աջակցվում է ինչպես դասական C++ ծրագրերի մշակումը, այնպես էլ QML լեզվի օգտագործումը, որտեղ JavaScript-ն օգտագործվում է սկրիպտներ սահմանելու համար, իսկ ինտերֆեյսի տարրերի կառուցվածքն ու պարամետրերը սահմանվում են CSS-ի նման բլոկներով:

Qt Creator-ի նոր տարբերակը ավելացնում է փորձարարական աջակցություն միկրոկոնտրոլերների համար հավելվածներ մշակելու և WebAssembly-ում մոդուլների միջոցով կոմպիլյացիայի համար:Qt MCU-ների համար"Եւ"Qt WebAssembly-ի համար«. Համակարգերի համար
CMake 3.14 և ավելի նոր տարբերակները օգտագործում են նորը նախագծերի տեղադրման և վերլուծման համար ֆայլի API (/.cmake/api/): Ավելացված է աջակցություն կոդերի խմբագրին ընդլայնումներ Լեզվի սերվերի արձանագրություն՝ իմաստաբանության ընդգծման համար, ինչպես նաև Python լեզվի համար լեզվի սերվերի պարզեցված կազմաձևումը: Ինտերֆեյսին ավելացվել է տարբերակ՝ տողերի վերջավորության նշագրման ոճը փոխելու համար: QML կապերը խմբագրելու հնարավորությունն ավելացվել է Qt Quick Designer-ին:

Source: opennet.ru

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