Anuncio de la disponibilidad de RAD Studio 12 Athens

Anuncio de la disponibilidad de RAD Studio 12 Athens 



Embarcadero se complace en anunciar el lanzamiento de RAD Studio 12 Athens, junto con Delphi 12 y C++Builder 12. El lanzamiento de RAD Studio 12 Athens está repleto de nuevas e interesantes características que están sentando las bases para el futuro del producto.


Tabla de contenido


  • Nuevas características clave
  • Cosas maravillosas para C++
  • Algunas buenas adiciones de Delphi
  • FireMonkey y Skia como nueva base
  • Modernización de VCL con arquitectura MDI y UI con pestañas
  • Novedad en Delphi RTL, datos y otras áreas
  • Mejoras en el IDE de RAD Studio
  • Servidor RAD e InterBase
  • Calidad, calidad, calidad
  • Listos para comenzar



Nuevas características clave 


Este es un resumen de las características clave introducidas en RAD Studio 12. Las siguientes secciones ofrecen más detalles, pero es bueno comenzar con un resumen:


  • Integración de Visual Assist en el IDE para C++Builder, que proporciona la mejor finalización de código, navegación de código y refactorización de cambio de nombre para el lenguaje C++.

  • Una vista previa de un compilador de C++ basado en CLANG significativamente actualizado para Win64, para admitir las características más recientes del lenguaje estándar C++ y ofrecer una mejor integración con bibliotecas externas y código C++.

  • Adiciones al lenguaje Delphi, incluidos literales de cadenas multilínea, para abordar algunas solicitudes relevantes de los clientes.

  • Soporte de Skia en FireMonkey, que ofrece mayor rendimiento y calidad en la representación de gráficos y controles de UI en todas las plataformas de destino, con la adopción de una nueva base para FireMonkey.

  • Un MDI rediseñado y una nueva arquitectura de interfaz de usuario con pestañas para VCL para ayudar a nuestros clientes a modernizar sus aplicaciones existentes, agregando soporte para HighDPI y estilo a los programas existentes con un mínimo esfuerzo de su parte.

  • Un nuevo componente FireDAC Query by Ejemplo (QBE) para facilitar el filtrado de datos y un nuevo asistente JSON para Delphi para agregar un mapeo de los datos en el popular formato JSON a los objetos, como lo tenemos para XML.

  • Muchas mejoras de productividad y calidad de IDE para que sea más fácil y rápido usar RAD Studio para las tareas diarias.

  • Compatibilidad con ID inteligentes en RAD Server, para hacer que las API REST alojadas del cliente sean más potentes y flexibles, manteniendo al mismo tiempo la facilidad de uso de RAD Server.



Cosas maravillosas para C++


Un enfoque importante de esta versión está en C++Builder y nuestra cadena de herramientas C++ (disponible también en RAD Studio). El equipo se ha centrado en dos mejoras clave de C++: modernizar nuestros compiladores y cadena de herramientas de C++ y proporcionar una productividad asombrosa con la finalización de código, además de agregar refactorización y navegación mediante la integración de Visual Assist.


La actualización de la cadena de herramientas de C++ es una revisión sorprendente de nuestro soporte de C++. Incluye no solo una nueva versión de Clang, sino también las bibliotecas de tiempo de ejecución de C y C++ y STL (la biblioteca de plantillas estándar de C++), además del vinculador y el depurador. El objetivo de este gran esfuerzo es ofrecer estándares C++ modernos, con la capacidad de ejecutar código C++ que se encuentra en bibliotecas y proyectos recientes, usar fácilmente bibliotecas de terceros, aprovechar los estándares modernos de codificación segura, tener aplicaciones más eficientes y una depuración excelente. También apunta a mejorar directamente áreas como los enlaces y STL, y pasa a los estándares de la plataforma Windows, como el uso de los formatos de depuración y objetos COFF y PDB, lo que potencialmente le permite una compatibilidad mucho más amplia con otras herramientas. Puede leer más sobre esta función en esta publicación de blog de vista previa:  https://blogs.embarcadero.com/win64-clang-toolchains-in-rad-studio-12/


En 12.0, enviaremos una vista previa de esta nueva cadena de herramientas de C++, disponible como compilador de línea de comandos. Continuaremos trabajando en la integración IDE de esta nueva cadena de herramientas de C++, en paralelo con los compiladores de C++ existentes, y en la integración con las bibliotecas de Delphi en RAD Studio, incluidas las bibliotecas VCL y FireMonkey UX. Planeamos poner estas actualizaciones a disposición de los clientes con suscripción a medida que estén disponibles. 
Otra innovación significativa para C++Builder en 12.0 proviene de la integración de la tecnología Visual Assist para ofrecer una mejor comprensión del código, incluida la finalización del código, la navegación del código y la refactorización. Estas son herramientas de productividad clave que ayudan en tareas de desarrollo comunes, desde la finalización de código que se invoca con frecuencia durante la codificación, hasta la navegación que permite a los desarrolladores encontrar fácilmente partes relevantes de su código en lugar de buscar manualmente en una base de código, hasta refactorizaciones que ayudan a la organización y seguridad del código. . Tendremos un subconjunto inicial significativo de funciones VA disponibles en RAD Studio, incluida la búsqueda de símbolos y referencias, la visualización del esquema del proyecto, la navegación desde la implementación hasta la declaración y viceversa, y la refactorización de cambio de nombre. Puede leer esta publicación de blog teaser sobre VA en C++Builder en https://blogs.embarcadero.com/yukon-beta-blog-c-and-visual-assist-in-rad-studio-12-0/ 



Grandes mejoras para Delphi


En el lado del compilador Delphi, 12.0 agrega algunas extensiones pequeñas pero agradables, incluido el soporte para cadenas literales largas, cadenas literales multilínea, limitadas por comillas triples, para permitir una incrustación más sencilla de SQL, HTML, JSON, XML y texto similar de varias líneas dentro el código fuente de una aplicación. Puede leer más sobre esta función en esta publicación de blog de vista previa: https://blogs.embarcadero.com/yukon-beta-blog-delphi-language-modernizing-string-literals/ . El compilador Delphi 12 también ofrece una definición de alias de tipo débil para NativeInt, para una compatibilidad mejorada con Win32/Win64, mejor soporte para comparaciones de números de punto flotante NaN y la desactivación de excepciones de punto flotante en todas las plataformas.


En términos de soporte de plataforma, Delphi 12.0 ofrece compatibilidad para el nivel 33 de API de Android, que es un requisito de Google para el envío de la aplicación Play Store.


FireMonkey y Skia como nueva base


En términos de bibliotecas de interfaz de usuario, el conjunto de mejoras más significativo en RAD Studio 12.0, tanto para Delphi como para C++Builder, proviene de la integración del muy popular motor de renderizado multiplataforma Skia, en FireMonkey. Esto se hace integrando el proyecto de código abierto Skia4Delphi, pero también ampliándolo con compatibilidad con Vulkan, compatibilidad con efectos y filtros con Skia Shading Language, un codificador WebP, compatibilidad con impresoras e impresión en PDF. 


El soporte de RAD Studio Skia incluye API directas, controles de UI específicos (TSkAnimatedImage, TSkLabel, TSkPaintBox y TSkSvg) y el mapeo automático de los controles de UI de FireMonkey que representan la UI a través de Skia. En términos generales, Skia mejora la calidad del renderizado y el rendimiento. Tenga en cuenta que los mismos controles de Skia UI también están disponibles en la biblioteca de Windows VCL.



Además del soporte de Skia, que ofrece una nueva base sólida para el futuro de la biblioteca, hemos mejorado nuestro soporte de Android coincidiendo con muchas mejoras recientes de la plataforma, hemos agregado soporte de pantalla dividida para permitir que la aplicación FireMonkey funcione en un panel de lado a lado en tanto iOS como Android, y reelaboró ​​ampliamente las capacidades de entrada de texto de los controles TEdit de una sola línea y TMemo de varias líneas. 


Otra mejora significativa del IDE, para el desarrollo de FireMonkey, es la introducción de un asistente para generar iconos y pantallas de presentación en todas las resoluciones requeridas por Apple y Google, a partir de una única imagen SVG y el soporte para iconos adaptativos de Android, como puedes leer en  https://blogs.embarcadero.com/multi-device-icon-generator/



Modernización de VCL con arquitectura MDI y UI con pestañas


Hemos estado realizando trabajos de modernización de VCL para ayudar a nuestros clientes a migrar sus aplicaciones existentes (a menudo muy grandes y bien establecidas en su industria de destino). En 12.0, la atención se centra en mantener vivo el antiguo, pero aún popular, modelo MDI (interfaz multidocumento de Windows). Con la nueva versión, los clientes podrán adoptar soporte completo HighDPI para aplicaciones MDI y también adoptar estilos VCL. Permitiremos a nuestros clientes evitar los problemas de plataforma causados ​​por el hecho de que Microsoft ha estado descuidando el soporte para MDI en los últimos años.



Además, RAD Studio 12.0 introdujo una nueva interfaz de usuario basada en pestañas (como la de Google Chrome y muchas otras aplicaciones populares) como una migración sencilla desde MDI o un modelo completamente nuevo, con el nuevo control TFormTabsBar. La biblioteca VCL tiene mejoras en la gestión de futones para pantallas de alto DPI.


Como parte de las mejoras de VCL, la nueva versión presenta una serie de nuevos diseñadores para ayudar a simplificar el trabajo: hay un nuevo editor de listas de cadenas, un editor de cadenas multilínea y cuadros de diálogo de configuración rápida para botones, grupos de radio y paneles. Algunas de estas útiles herramientas formaban parte originalmente de KSVC (Controles VCL exclusivos de Konopka) y ahora están disponibles para cualquier persona, incluso sin instalar este paquete de control complementario.



Además de las definiciones principales de RTL, hemos creado un nuevo conjunto de unidades con los encabezados completos de la API de Windows convertidos a Object Pascal, para facilitar a los desarrolladores de Delphi llamar a cualquier API de la plataforma Windows que no exponemos en nuestras bibliotecas de componentes. Esta conversión de API incluye 311 archivos de encabezado Delphi con 41 MB de código, que cubren toda la plataforma API proporcionada por Microsoft.


Además, hemos mejorado la integración del navegador Edge con nuevas interfaces, propiedades y eventos, igualando las mejoras en el control de la plataforma WebView 2 desde nuestro último lanzamiento. Otras mejoras en VCL son un enumerador TControl extremadamente flexible, mejoras en el Administrador de Windows de escritorio (DWM) y cambios en el modo de doble búfer.


Novedad en Delphi RTL, datos y otras áreas


Hay muchas mejoras en otras bibliotecas de tiempo de ejecución centrales de Delphi, aprovechadas también por C++ Builder. Para nuestra biblioteca insignia de acceso a bases de datos, FireDAC, hemos agregado soporte para el modo QBE clásico (Consulta por ejemplo) que permite el desarrollo de una interfaz de usuario para ingresar criterios simples de filtrado de datos. 


Además, los componentes de FireDAC ofrecen algunas funciones adicionales para ayudar a los desarrolladores a mejorar la seguridad de sus aplicaciones, al limitar el tipo de comandos SQL para un control de consulta específico, prohibir múltiples comandos y bloquear más cambios de SQL. Estas mejoras ofrecen a los desarrolladores la capacidad de mejorar la seguridad de las aplicaciones, si se utilizan junto con otras mejores prácticas de la industria.


RAD Studio 12.0 también presenta un nuevo asistente de mapeo JSON, que puede generar clases que coincidan con una estructura de datos JSON y un código de lectura y escritura adecuado para leer el JSON en un conjunto de objetos y transmitirlo a un nuevo archivo.



Mejoras en el IDE de RAD Studio


Hay muchos cambios relevantes en el IDE. 


La primera es una nueva UX para el instalador de funciones, que se utiliza para la instalación inicial del producto o para agregar funciones y plataformas más adelante. Este cuadro de diálogo ha sido completamente rediseñado en comportamiento y en la interfaz de usuario, utilizando controles VCL modernos, lo que mejora la primera impresión del producto para los nuevos usuarios. Es más fácil de usar porque todas las opciones de instalación principales, incluidos los complementos adicionales, están en una página, a diferencia del diseño anterior de varios pasos. El nuevo cuadro de diálogo también ofrece mejor información de error, en caso de problemas de instalación.



El IDE ahora tiene resaltado de sintaxis en muchas ventanas secundarias, como la pila de llamadas y la vista de estructura. También hay mejoras en las búsquedas de código fuente, en la forma en que funciona la barra de herramientas de navegación y en el uso de múltiples ventanas de edición, además de muchos otros pequeños ajustes.


Además de la introducción de la integración de Visual Assist para C++Builder, también hemos realizado más mejoras en la compatibilidad con DelphiLSP utilizada para Code Insight. Por ejemplo, la finalización de código ahora incluye palabras clave del idioma y las plantillas de código se muestran en áreas de código contextualmente correctas durante la finalización, además de tener un mejor soporte para genéricos y completar matrices o tipos de matrices.


Finalmente, RAD Studio amplía aún más la nueva ToolsAPI para el editor de código para permitir a los clientes y proveedores externos crear complementos más flexibles para nuestro IDE.


Servidor RAD e InterBase


Hay algunas mejoras notables para RAD Server, nuestra plataforma de alojamiento de API de servidor REST. El cambio más significativo es la capacidad de admitir fácilmente un modelo de identificación inteligente, utilizando una biblioteca estándar para definir mejores identificadores para los recursos expuestos por el servidor. RAD Server también ofrece mejor rendimiento, mejoras en la paginación de datos, mejor autenticación de sesión y calidad general.


Finalmente, la nueva versión de RAD Studio incluye la edición para desarrolladores y las versiones integradas de la actualización 5 de InterBase 2020 lanzada recientemente.


Calidad, calidad, calidad


Además de las características destacadas anteriormente, el lanzamiento se ha centrado en el trabajo de calidad en múltiples subsistemas, comenzando con el IDE, pero incluyendo también las bibliotecas Delphi RTL, la biblioteca VCL UI, la biblioteca multiplataforma FireMonkey, FireDAC y otros accesos a datos. capas, componentes de cliente y servidor HTTP y servidor RAD.


En RAD Studio 12, implementamos correcciones para 1027 problemas informados por los clientes en Quality Portal (quality.embarcadero.com), abordamos 877 informes de errores públicos e implementamos 150 solicitudes de clientes para nuevas funciones.


Listos para comenzar


Las pruebas de productos para RAD Studio, Delphi y C++Builder 12 ya están disponibles y las versiones actualizadas de los productos están disponibles en la tienda en línea. Los clientes con suscripción de actualización pueden descargar e instalar RAD Studio 12 hoy usando su licencia existente y recibirán un correo electrónico anunciando la disponibilidad de la nueva versión. Las descargas están disponibles en el portal de clientes en https://my.embarcadero.com .
Para más información, puedes consultar los siguientes enlaces:
La página del sitio web de Embarcadero para RAD Studio
La página más detallada  de Novedades en DocWiki
La lista de errores corregidos reportados públicamente (también en DocWiki)
PDF de la matriz de funciones de RAD Studio 
El repositorio de demostraciones se puede encontrar en GitHub.
Estamos muy contentos con el trabajo que realizó nuestro equipo para RAD Studio 12 Athens y estamos seguros de que usted disfrutará igualmente usando esta nueva versión de RAD Studio, C++Builder y Delphi.







Comentarios

Entradas populares de este blog

Aprenda las diferencias: texto enriquecido vs. Texto sin formato

Construye tu aplicación en minutos con Sencha Ext JS y RAD Server

Aprende a construir un tablero Kanban con Ext JS