انتشار چارچوب 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 گرافیکی مستقل از API سه بعدی سیستم عامل را آغاز کرده است. در Qt 3 پیشنهاد شده اجرای مقدماتی موتور رندر صحنه جدید با استفاده از لایه جدید RHI (رابط سخت افزاری رندر) برای فعال کردن برنامه های Qt Quick نه تنها در بالای OpenGL، همانطور که تاکنون وجود داشت، بلکه با استفاده از Vulkan، Metal و Direct 3D 11 نیز اجرا شود. موتور جدید در حال حاضر در قالب گزینه ای برای آماده سازی برنامه های کاربردی برای انتقال به Qt 6 پیشنهاد شده است که در آن از RHI به طور پیش فرض برای خروجی گرافیک استفاده می شود.
  • ماژول Qt Quick Timeline پیاده سازی شده است، که با استفاده از جدول زمانی و فریم های کلیدی، متحرک سازی ویژگی ها را آسان تر می کند. این ماژول از محیط توسعه Qt Design Studio مشتق شده است که یک ویرایشگر مبتنی بر تایم لاین برای ایجاد انیمیشن ها بدون نوشتن کد ارائه می دهد.
  • ماژول تجربی اضافه شد Qt Quick 3D، که یک API یکپارچه برای ایجاد رابط های کاربری بر اساس Qt Quick ارائه می دهد که عناصر گرافیکی دو بعدی و سه بعدی را با هم ترکیب می کند. API جدید به شما امکان می دهد از QML برای تعریف عناصر رابط سه بعدی بدون استفاده از فرمت UIP استفاده کنید. این ماژول مشکلاتی مانند سربار زیاد را هنگام ادغام QML با محتوای Qt 2D یا 3D Studio حل می کند و توانایی همگام سازی انیمیشن ها و تبدیل ها را در سطح فریم بین دو بعدی و سه بعدی فراهم می کند. در Qt Quick 3D می توانید از یک زمان اجرا (Qt Quick)، یک طرح صحنه و یک فریم ورک انیمیشن برای دو بعدی و سه بعدی استفاده کنید و از استودیوی طراحی Qt برای توسعه رابط بصری استفاده کنید.
  • WheelHandler اضافه شده است، یک کنترل کننده برای رویدادهای چرخ ماوس، و همچنین رویدادهای یک چرخ شبیه سازی شده توسط یک پد لمسی.
  • کار برای بهبود عملکرد در صفحه نمایش هایی با تراکم پیکسلی بالا ادامه دارد. از جمله توانایی تعیین فاکتورهای مقیاس بندی کسری.
  • قابلیت افزودن فضاهای رنگی برای تصاویر اضافه شده است که به شما امکان می دهد هنگام نمایش تصاویر در مانیتورهای کالیبره شده به بازتولید رنگ صحیح برسید.
  • فضای نام QColorConstants اضافه شد که در زمان کامپایل به شما امکان می دهد نمونه هایی از کلاس QColor را با یک پالت از پیش تعریف شده تولید کنید.
  • پشتیبانی از خواندن و نوشتن Markdown به ابزارک های Qt و اجزای Qt Quick برای ایجاد ویرایشگرهای متن اضافه شده است.
  • QCalendar API توانایی کار با تقویم هایی غیر از میلادی را پیاده سازی می کند.
  • برای اندروید، پشتیبانی از مجموعه‌هایی که چندین ABI را در بر می‌گیرند اضافه شده است، که به شما امکان می‌دهد یک برنامه کاربردی برای معماری‌های مختلف به طور همزمان کامپایل کنید. پشتیبانی از قالب بسته AAB نیز اضافه شده است که به برنامه ها اجازه می دهد برای تمام معماری های پشتیبانی شده در یک آرشیو تحویل داده شوند.
  • انجام شد بهینه سازی عملکرد ماژول Qt 3D، از جمله کار مدرن با موضوعات، اشیاء فریم بافر و سیستم اطلاع رسانی. در نتیجه، امکان کاهش بار روی CPU در هنگام ترسیم فریم و افزایش کارایی همگام سازی بین رشته های در حال اجرا وجود داشت.
  • APIها برای پیکربندی پارامترهای HTTP/2 و نظارت بر اتصال شبکه به ماژول شبکه Qt اضافه شده‌اند.
  • موتور وب Qt WebEngine به Chromium 77 به روز شده و با یک API جدید برای مدیریت چرخه زندگی شی QWebEnginePage گسترش یافته است.
  • مجوز برای Qt Wayland Compositor، Qt Application Manager و اجزای Qt PDF تغییر کرد از LGPLv3 به GPLv3، یعنی. پیوند با نسخه‌های جدید این مؤلفه‌ها اکنون مستلزم باز کردن کد منبع برنامه‌ها تحت مجوزهای سازگار با GPLv3 یا خرید مجوز تجاری است (LGPLv3 اجازه پیوند با کد اختصاصی را می‌دهد).

همزمان شکل گرفت انتشار IDE QtCreator 4.11.0، طراحی شده برای ایجاد برنامه های بین پلتفرمی با استفاده از کتابخانه Qt. هم توسعه برنامه های کلاسیک ++C و هم استفاده از زبان QML پشتیبانی می شود که در آن جاوا اسکریپت برای تعریف اسکریپت ها استفاده می شود و ساختار و پارامترهای عناصر رابط توسط بلوک های CSS مانند تنظیم می شوند.

نسخه جدید Qt Creator پشتیبانی آزمایشی را برای توسعه برنامه های کاربردی برای میکروکنترلرها و کامپایل در WebAssembly با استفاده از ماژول ها اضافه می کند.Qt برای MCU"و"Qt برای WebAssembly". برای سیستم های با
CMake 3.14 و نسخه های جدیدتر از نسخه جدید برای راه اندازی و تجزیه پروژه ها استفاده می کنند فایل API (/.cmake/api/). پشتیبانی به ویرایشگر کد اضافه شد انبساط پروتکل زبان سرور برای برجسته کردن معناشناسی، و همچنین پیکربندی ساده سرور زبان برای زبان پایتون. گزینه ای برای تغییر سبک علامت گذاری انتهای خط به رابط اضافه شده است. قابلیت ویرایش پیوندهای QML به Qt Quick Designer اضافه شده است.

منبع: opennet.ru

اضافه کردن نظر