Đã có phiên bản Alpha của Qt 6.0

Công ty Qt công bố về việc dịch chủ đề Qt 6 đến giai đoạn thử nghiệm alpha. Qt 6 bao gồm những thay đổi quan trọng về kiến ​​trúc và yêu cầu một trình biên dịch hỗ trợ tiêu chuẩn C++17 để xây dựng. Giải phóng lên kế hoạch kể từ ngày 1 tháng 2020 năm XNUMX.

Chìa khóa tính năng Câu 6:

  • API đồ họa trừu tượng độc lập với API 3D của hệ điều hành. Một thành phần quan trọng của ngăn xếp đồ họa Qt mới là công cụ kết xuất cảnh, sử dụng lớp RHI (Giao diện phần cứng kết xuất) để hỗ trợ các ứng dụng Qt Quick không chỉ với OpenGL mà còn trên các API Vulkan, Metal và Direct 3D.
  • Mô-đun Qt Quick 3D với API để tạo giao diện người dùng dựa trên Qt Quick, kết hợp các yếu tố đồ họa 2D và 3D. Qt Quick 3D cho phép bạn sử dụng QML để xác định các thành phần giao diện 3D mà không cần sử dụng định dạng UIP. Trong Qt Quick 3D, bạn có thể sử dụng một thời gian chạy (Qt Quick), một bố cục cảnh và một khung hoạt ảnh cho 2D và 3D, đồng thời sử dụng Qt Design Studio để phát triển giao diện trực quan. Mô-đun này giải quyết các vấn đề như chi phí lớn khi tích hợp QML với nội dung từ Qt 3D hoặc 3D Studio và cung cấp khả năng đồng bộ hóa hoạt ảnh và chuyển đổi ở cấp khung giữa 2D và 3D.
  • Tái cấu trúc cơ sở mã thành các thành phần nhỏ hơn và giảm kích thước của sản phẩm cơ sở. Các công cụ dành cho nhà phát triển và các thành phần chuyên dụng sẽ được cung cấp dưới dạng tiện ích bổ sung được phân phối qua cửa hàng danh mục Thị trường Qt.
  • Hiện đại hóa đáng kể QML:
    • Hỗ trợ gõ mạnh mẽ.
    • Khả năng biên dịch QML thành biểu diễn C++ và mã máy.
    • Tùy chọn hỗ trợ JavaScript đầy đủ (sử dụng công cụ JavaScript đầy đủ tính năng đòi hỏi nhiều tài nguyên, điều này ngăn cản việc sử dụng QML trên các thiết bị như bộ vi điều khiển).
    • Từ chối lập phiên bản trong QML.
    • Hợp nhất các cấu trúc dữ liệu được sao chép trong QObject và QML (sẽ giảm mức tiêu thụ bộ nhớ và tăng tốc độ khởi động).
    • Loại bỏ việc tạo cấu trúc dữ liệu trong thời gian chạy để chuyển sang tạo thời gian biên dịch.
    • Ẩn các thành phần bên trong thông qua việc sử dụng các phương thức và thuộc tính riêng tư.
    • Cải thiện tích hợp với các công cụ phát triển để tái cấu trúc và chẩn đoán lỗi thời gian biên dịch.
  • Thêm công cụ để xử lý nội dung liên quan đến đồ họa tại thời điểm biên dịch, chẳng hạn như chuyển đổi hình ảnh PNG thành họa tiết nén hoặc chuyển đổi trình đổ bóng và lưới thành định dạng nhị phân được tối ưu hóa cho phần cứng cụ thể.
  • Nhúng một công cụ thống nhất cho các chủ đề và phong cách, cho phép bạn đạt được giao diện của các ứng dụng dựa trên Qt Widgets và Qt Quick, dành cho các nền tảng di động và máy tính để bàn khác nhau.
  • Người ta đã quyết định sử dụng CMake thay vì QMake làm hệ thống xây dựng. Hỗ trợ xây dựng ứng dụng bằng QMake sẽ vẫn được duy trì, nhưng bản thân Qt sẽ được xây dựng bằng CMake. CMake được chọn vì bộ công cụ này được các nhà phát triển dự án C++ sử dụng rộng rãi và được hỗ trợ trong nhiều môi trường phát triển tích hợp. Phát triển hệ thống lắp ráp Qbs, được cho là sẽ thay thế cho QMake, tiếp tục cộng đồng.
  • Chuyển đổi sang tiêu chuẩn C++17 trong quá trình phát triển (trước đây C++98 đã được sử dụng). Qt 6 có kế hoạch triển khai hỗ trợ cho nhiều tính năng C++ hiện đại nhưng không làm mất khả năng tương thích ngược với mã dựa trên các tiêu chuẩn cũ.
  • Khả năng sử dụng một số chức năng được cung cấp cho QML và Qt Quick trong mã C++. Bao gồm một hệ thống thuộc tính mới cho QObject và các lớp tương tự sẽ được trình bày. Từ QML, một công cụ làm việc với các liên kết sẽ được tích hợp vào lõi Qt, điều này sẽ giảm tải và mức tiêu thụ bộ nhớ cho các liên kết và cung cấp chúng cho tất cả các phần của Qt chứ không chỉ Qt Quick.
  • Hỗ trợ mở rộng cho các ngôn ngữ bổ sung như Python và WebAssugging.
  • Nguồn: opennet.ru

Thêm một lời nhận xét