Dostępna jest wersja alfa Qt 6.0

Firma Qt Company ogłosiła o tłumaczeniu gałęzi Qt 6 do etapu alfa-testów. Qt 6 wprowadza znaczące zmiany architektoniczne i wymaga kompilatora wspierającego standard C++17. Wydanie planowane na 1 grudnia 2020 roku.

Kluczowe cechy Qt 6:

  • Abstrakcyjny graficzny API, niezależny od 3D API systemu operacyjnego. Kluczowym komponentem nowego stosu graficznego Qt jest silnik renderujący sceny, który wykorzystuje warstwę RHI (Rendering Hardware Interface) w celu zapewnienia działania aplikacji Qt Quick nie tylko z OpenGL, ale również z API Vulkan, Metal i Direct 3D.
  • Moduł Qt Quick 3D z API do tworzenia interfejsów użytkownika opartych na Qt Quick, łączących elementy grafiki 2D i 3D. Qt Quick 3D pozwala na użycie QML do definiowania 3D elementów interfejsów bez angażowania formatu UIP. W Qt Quick 3D dla 2D i 3D można używać jednego runtime (Qt Quick), jednego układu sceny i jednego frameworka animacji, a do wizualnego projektowania interfejsu można stosować Qt Design Studio. Moduł rozwiązuje takie problemy, jak duże koszty integracji QML z zawartością z Qt 3D lub 3D Studio i umożliwia synchronizację animacji oraz transformacji na poziomie pojedynczych klatek między 2D a 3D.
  • Restrukturyzacja bazy kodu poprzez podział na mniejsze części i skrócenie rozmiaru podstawowego produktu. Narzędzia dla programistów i specjalistyczne komponenty będą dostarczane w formie dodatków, dystrybuowanych przez katalog-skład. Qt Marketplace.
  • Znacząca modernizacja QML:
    • Wsparcie dla ścisłego typowania.
    • Możliwość kompilacji QML do reprezentacji w C++ i kodzie maszynowym.
    • Przeniesienie pełnego wsparcia JavaScript do kategorii opcji (użycie w pełni funkcjonalnego silnika JavaScript wymaga dużych zasobów, co utrudnia zastosowanie QML na sprzęcie takim jak mikrokontrolery).
    • Rezygnacja z wersjonowania w QML.
    • Ujednolicenie struktur danych powielanych w QObject i QML (pozwoli na zmniejszenie zużycia pamięci i przyspieszenie uruchamiania).
    • Rezygnacja z generowania struktur danych w trakcie wykonywania na rzecz generowania w czasie kompilacji.
    • Ukrycie komponentów wewnętrznych poprzez wykorzystanie prywatnych metod i właściwości.
    • Ulepszona integracja z narzędziami deweloperskimi do refaktoryzacji i diagnozowania błędów w czasie kompilacji.
  • Dodawanie narzędzi do przetwarzania zasobów związanych z grafiką na etapie kompilacji, na przykład do konwersji obrazów PNG na skompresowane tekstury lub do konwersji shaderów i siatek do zoptymalizowanych formatów binarnych dla konkretnego sprzętu.
  • Wbudowanie zunifikowanego silnika do motywów i stylów, który umożliwia osiągnięcie wyglądu aplikacji opartych na Qt Widgets i Qt Quick, charakterystycznego dla różnych platform mobilnych i stacjonarnych.
  • Jako system budowania postanowiono użyć CMake zamiast QMake. Wsparcie dla budowy aplikacji za pomocą QMake zostanie zachowane, ale sam Qt będzie budowany przy użyciu CMake. CMake został wybrany, ponieważ to narzędzie zyskało dużą popularność wśród programistów projektów C++ i jest wspierane w wielu zintegrowanych środowiskach programistycznych. Prace nad systemem budowania Qbs, który miał na celu zastąpienie QMake, są kontynuowane przez społeczność.
  • Przejście na standard C++17 w rozwoju (wcześniej używano C++98). W Qt 6 planuje się wdrożenie wsparcia dla wielu nowoczesnych funkcji C++, ale bez utraty wstecznej kompatybilności z kodem opartym na wcześniejszych standardach.
  • Możliwość użycia w kodzie C++ pewnych funkcji oferowanych dla QML i Qt Quick. W tym będzie wprowadzony nowy system właściwości dla QObject i podobnych klas. Silnik do pracy z powiązaniami (binding) zostanie zintegrowany z rdzeniem Qt, co pozwoli zmniejszyć obciążenie i zużycie pamięci do powiązań oraz umożliwi ich wykorzystanie we wszystkich częściach Qt, a nie tylko w Qt Quick.
  • Rozszerzenie wsparcia dla dodatkowych języków, takich jak Python i WebAssembly.
  • Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster