Lanzamiento del framework Qt 5.14 y del entorno de desarrollo Qt Creator 4.11.0

Después de seis meses de desarrollo preparado lanzamiento de un marco multiplataforma Qt 5.14. El código fuente de los componentes de Qt tiene licencia LGPLv3 y GPLv2, las herramientas de desarrollo de Qt como Qt Creator y qmake, y algunos módulos tienen licencia GPLv3. El lanzamiento de Qt 5.14 marcó el comienzo de la preparación de la rama Qt 6, en la que son esperados importantes cambios arquitectónicos. Qt 6 está programado para finales del próximo año y, para facilitar la transición a la nueva rama, se decidió incluir implementaciones preliminares de algunas innovaciones en las versiones Qt 5.14 y Qt 5.15 LTS.

El principal innovaciones:

  • Qt Quick ha comenzado a trabajar para proporcionar una API de gráficos que sea independiente de la API 3D del sistema operativo. En Qt 5.14 propuesto Implementación preliminar de un nuevo motor de renderizado de escenas usando la nueva capa RHI (Rendering Hardware Interface) para permitir que las aplicaciones Qt Quick se ejecuten no solo sobre OpenGL, como era el caso hasta ahora, sino también usando Vulkan, Metal y Direct 3D 11. El nuevo motor se ofrece actualmente como una opción para preparar aplicaciones para la transición a Qt 6, en el que RHI se utilizará de forma predeterminada para la salida de gráficos.
  • Se implementó el módulo Qt Quick Timeline, lo que facilita la animación de propiedades utilizando una línea de tiempo y fotogramas clave. El módulo se deriva del entorno de desarrollo Qt Design Studio, que proporciona un editor basado en una línea de tiempo para crear animaciones sin escribir código.
  • Módulo experimental agregado Qt Rápido 3D, que proporciona una API unificada para crear interfaces de usuario basadas en Qt Quick que combinan elementos gráficos 2D y 3D. La nueva API le permite usar QML para definir elementos de interfaz 3D sin usar el formato UIP. El módulo resuelve problemas como la gran sobrecarga al integrar QML con contenido de Qt 3D o 3D Studio y brinda la capacidad de sincronizar animaciones y transformaciones a nivel de fotograma entre 2D y 3D. En Qt Quick 3D, puede usar un tiempo de ejecución (Qt Quick), un diseño de escena y un marco de animación para 2D y 3D, y usar Qt Design Studio para el desarrollo de interfaces visuales.
  • Se agregó WheelHandler, un controlador para eventos de la rueda del mouse, así como eventos para una rueda emulada por un panel táctil.
  • Se continúa trabajando para mejorar el rendimiento en pantallas con alta densidad de píxeles. Incluyendo la capacidad de especificar factores de escala fraccionarios.
  • Se agregó la capacidad de agregar espacios de color para las imágenes, lo que le permite lograr una reproducción correcta del color al mostrar imágenes en monitores calibrados.
  • Se agregó el espacio de nombres QColorConstants, que en tiempo de compilación le permite generar instancias de la clase QColor con una paleta predefinida.
  • Se ha agregado soporte para leer y escribir Markdown a los componentes Qt Widgets y Qt Quick para crear editores de texto.
  • La API QCalendar implementa la capacidad de trabajar con calendarios distintos del gregoriano.
  • Para Android, se agregó soporte para ensamblajes que abarcan múltiples ABI, lo que le permite compilar una aplicación para diferentes arquitecturas a la vez. También se agregó soporte para el formato de paquete AAB, lo que permite entregar aplicaciones para todas las arquitecturas compatibles en un solo archivo.
  • Realizado optimización del rendimiento del módulo Qt 3D, incluido el trabajo modernizado con subprocesos, objetos framebuffer y el sistema de notificación. Como resultado, fue posible reducir la carga en la CPU al dibujar un marco y aumentar la eficiencia de la sincronización entre subprocesos en ejecución.
  • Se han agregado API al módulo Qt Network para configurar los parámetros HTTP/2 y monitorear la conexión de red.
  • El motor web Qt WebEngine se actualizó a Chromium 77 y se amplió con una nueva API para administrar el ciclo de vida del objeto QWebEnginePage.
  • Licencia para componentes Qt Wayland Compositor, Qt Application Manager y Qt PDF cambió de LGPLv3 a GPLv3, es decir La vinculación con nuevas versiones de estos componentes ahora requiere abrir el código fuente de los programas bajo licencias compatibles con GPLv3 o comprar una licencia comercial (LGPLv3 permitía la vinculación con código propietario).

Al mismo tiempo formado versión IDE Qt Creator 4.11.0, diseñado para crear aplicaciones multiplataforma utilizando la biblioteca Qt. Se admite tanto el desarrollo de programas clásicos de C++ como el uso del lenguaje QML, en el que se utiliza JavaScript para definir scripts, y la estructura y los parámetros de los elementos de la interfaz se establecen mediante bloques tipo CSS.

La nueva versión de Qt Creator agrega soporte experimental para desarrollar aplicaciones para microcontroladores y compilar en WebAssembly mediante módulos "Qt para MCU"Y"Qt para ensamblaje web". Para sistemas con
CMake 3.14 y versiones más recientes utilizan uno nuevo para configurar y analizar proyectos API de archivos (/.cmake/api/). Se agregó soporte al editor de código. extensiones Protocolo de Language Server para resaltar la semántica y también configuración simplificada del Language Server para el lenguaje Python. Se ha agregado una opción a la interfaz para cambiar el estilo de marcado de final de línea. La capacidad de editar enlaces QML se ha agregado a Qt Quick Designer.

Fuente: opennet.ru

Añadir un comentario