уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.

26 мая 2020 года состоялся релиз RAD Studio 10.4 Sydney. Получается, что 26 мая вышла 26 версия Delphi (Совпадение? Не думаю). Двадцать шестая — это, если считать без версий типа Turbo, Community Edition и прочих. Событие, безусловно, важное для многих разработчиков, использующих в своей повседневной работе Delphi.  Итак, чем же нас решили порадовать разработчики из Idera/Embarcadero на этот раз.

Судя по страничке «What’s New» нововведений не так уж и много, хотя, говорят, исправлено более 700 ошибок. Поверим разработчикам на слово. В целях, так сказать, «пощупать» что и как решил попросить ключик для Trial-версии.

Минимальная установка Delphi займет примерно 3,4 Гб на жестком диске. Сама установка заняла, по моим ощущениям, порядка 10-15 минут. Заставка у Delphi 10.4 теперь вот такая:

Да простят меня и разработчики Delphi и дизайнеры и все, кто причастен к этой заставке, но, первая моя мысль от увиденного была такой: «Delphi навсегда останется в наших сердцах!»…ну, то есть, несмотря на яркий цвет, от заставки повеяло какой-то замогильной фигнёй. Ей-богу, лучше бы Сидней показали. Но это мелочи, с которыми в течение следующих шести месяцев все мы свыкнемся. Посмотрим на новинки из «What’s New»

Custom Managed Records

Среди основных нововведения языка значится «Custom Managed Records«. Теперь тип record  в Delphi поддерживает пользовательские инициализацию и финализацию. Мы можем объявлять записи с пользовательским кодом инициализации и финализации независимо от типа данных полей. Это достигается путем добавления новых операторов к record. Пример использования пользовательских операторов в record можно посмотреть здесь.

Unified Memory Management

Управление памятью в Delphi теперь унифицировано для всех поддерживаемых платформ — мобильных, настольных и серверных с использованием классической реализации управления памятью объектов. Ок, пусть будет.

VCL Style Changes for High DPI

В Delphi 10.4 переработан механизм работы со стилями. Теперь, как обещаются разработчики, элементы управления будут выглядеть одинаково на мониторах с любым разрешением.

VCL Per Control Styling

Разработчики VCL теперь могут использовать несколько стилей VCL в разных формах в одном приложении или даже в разных визуальных элементах управления на одной форме. Помимо обеспечения большей гибкости при оформлении, это также позволяет использовать сторонние элементы без стилей в стилизованном приложении VCL.

Вот это, на мой взгляд, сильно спорное нововведение. Гибкость, оно конечно, всегда хорошо, но тут бы не перегнуть с этой самой гибкостью. Не знаю как Вы, а я сторонник того, что одно приложение = один стиль оформления всего.

Новые компоненты VCL

Заявлено, по крайней мере о трех новых компонентах: TEdgeBrowser, TTitleBarPanel и TImageCollection.

TEdgeBrowser — компонент для поддержки работы с браузером Microsoft Edge. Отлично, что сделали такой компонент.

TTitleBarPanel — позволяет управлять заголовком окна. Довольно интересный, на мой взгляд, компонент. На скриншотах (с официальной вики)ниже показаны возможности такого компонента. Так компонент выглядит в Design-Time

А вот так будет выглядеть заголовок окна запущенного приложения:

Думаю, что компонент и интересный и полезный. Стоит посмотреть на него чуть по-подробнее в одной из следующих статей блога.

TImageCollection — это новый компонент TVirtualImage, который поддерживает несколько разрешений и масштабирование DPI, что позволяет получить высококачественное масштабирование и отображение изображений путем замены классического компонента TImage.

Улучшения в RTL

В Delphi 10.4 внесены многочисленные улучшения в  части производительности и стабильности библиотеки Parallel Programming Library (PPL).

Внесены некоторые улучшения и в библиотеку доступа к базам данных FireDAC, а также обновлены драйверы для FireBird, PostgreSQL и SQLite. Для базы данных SQLite предлагается возможность выбирать между статическим или динамическим связыванием.

Библиотеки HTTP и REST расширены дополнительными функциями HTTPS.

Улучшения производительности и возможностей LiveBindings в Delphi 10.4 для приложений VCL и FireMonkey. В основном уделялось внимание производительности. В результате некоторые операции LiveBindings, по словам разработчиков, выполняются на порядок быстрее.

Более подробно про улучшения в RTL и RTTI можно узнать здесь.

FireMonkey

Само собой обновилась и огненная обезьяна в Delphi 10.4. Теперь разработчики, использующие платформу FireMonkey, могут ориентироваться на последние версии поддерживаемых операционных систем.

Итого

В целом, не могу сказать, что новая версия Delphi фонтанирует нововведениями, но, между тем, на некоторые новые возможность в Delphi 10.4 хочется взглянуть. Например, на работу с TTitleBarPanel, HTTP Client Library и т.д. Так же, на страничке про новые фичи и исправленные баги заинтересовал момент, касающийся работы с JSON. А именно, вот эта фраза: «JSON reading optimization: TJSONReader is now 50% faster.» Что ж, буквально недавно возвращался к работе с JSON (правда в Lazarus) и, видимо, придётся повторить тест на чтение.

5 3 голоса
Рейтинг статьи
уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.
Подписаться
Уведомить о
4 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии
Александр Борисов
Александр Борисов
28/05/2020 21:40

На счет TEdgeBrowser. Там прежде чем говорить спасибо думает мозгами что сейчас идет разработка Microsoft Edge на хромиум ядре и никакого отношения к старому Edge кроме названия не имеет тобишь Embarcadero делая этот компонент зря потратила время так как старыфй Edge никакого отношения к новому кроме названия не имеет и при установке нового старый отключается ав будущем новый будет поставляться вместе с системой и старый будет отключен а возможно даже и удален вовсе. Лучше бы Ebarcadero добавили поддержку Windows 10 Game Bar. А то уже как 2 или 3 года как Game Bar появился в 10 а приложения на Delphi… Подробнее »

Последний раз редактировалось 3 лет назад Александр Борисов ем
Александр Истомин
Александр Истомин
30/05/2020 21:01

А не 27я ли версия?

Эмма Лаваль
Эмма Лаваль
27/05/2022 04:36

Хм…

Последний раз редактировалось 1 год назад Эмма Лаваль ем
Эмма Лаваль
Эмма Лаваль
27/05/2022 04:39

Не знаю как насчет за могильной… а вот то, что заставка тянет на старый баян: Центурион, Рим пал, это точно!