В 1970-х годах исследовательский центр компании IBM предложил новый способ создания запросов к базе данных – QBE (Query by Example). Он подразумевает ввод конечным пользователем информационной системы образцов значений полей в виде текстовой строки, которые потом преобразуются в стандартный запрос к базе данных. Это позволяет простому пользователю делать сложные запросы без необходимости изучать специализированный язык запросов (например, SQL), синтаксис которого может быть недоступен ему для понимания. Разработчики Delphi 12 добавили поддержку QBE в FireDAC.
Язык программирования самого высокого уровня содержит всего несколько команд для управления программистами
03 августа 2023
31 июля 2023
Улучшение поддержки файлов формата UTF-8 без BOM в Delphi 12
Одна из проблем, с которыми сталкиваются программисты на Delphi при чтении текстового файла – это определение его кодировки. Метод TEncoding.GetBufferEncoding работает корректно только если файл содержит метку порядка байтов (Byte Order Mark, BOM) для одной из стандартных кодировок. Если переданный в него буфер не содержит BOM, то возвращается кодировка по умолчанию. TEncoding.Default зависит от операционной системы. Например, для Windows – это ANSI, Linux или macOS – это UTF-8. То есть при отсутствии в текстовом файле BOM задача определения его кодировки (UTF-8 или ANSI или ASCII) лежит на программисте. И вот наконец-то в Delphi появился для этого свой функционал.
28 июля 2023
Новый способ получения OUTPUT-значения после DML операции MS SQL Server в FireDAC Delphi 12
Так получилось, что с периодичностью в два года я пишу о получении в программе значения первичного ключа, который сгенерирован СУБД при добавлении в таблицу новой строки. В 2019-м я писал об этом для UniDAC, потом в 2021-м для FireDAC. Разработчики Delphi 12 предоставили повод написать об этом и в 2023-м. В FireDAC для MS SQL Server, по аналогии с PostgreSQL и Firebird/InterBase, добавлена возможность получения OUTPUT-значения после DML операции с помощью параметров.
26 июля 2023
Новые редакторы свойств контролов в IDE Delphi 12
Уже несколько лет пользователям Delphi и C++ Builder через RAD Studio GetIt Package Manager доступен бонус – библиотека Konopka Signature VCL Controls (KSVC). Это библиотека, права на которую Embarcadero купила у Raize Software, имеет большой набор VCL-контролов и дизайнеров их свойств. Авторы Delphi 12, чтобы упростить разработчикам проектирование пользовательского интерфейса, добавили в IDE Delphi некоторые дизайнеры свойств из библиотеки KSVC.
24 июля 2023
Получение списка дочерних контролов в Delphi 12
В VCL получить список дочерних контролов у контрола можно с использованием цикла по массиву дочерних контролов TWinControl. Так как некоторые контролы сами могут быть контейнерами для контролов, то метод получения списка контролов на всех уровнях вложенности должен вызываться рекурсивно. В Delphi 12 эту задачу облегчили добавлением TControl Enumerator.
21 июля 2023
Новая версия RAD Server использует FastMM 5
Весной 2020 года состоялся релиз менеджера памяти FastMM 5. Ядро новой версии RAD Server, которая будет выпущена с Delphi 12, использует FastMM5. Переход на FastMM5 позволил увеличить производительность RAD Server. Особенно в сценариях с интенсивной многопоточностью. Средний прирост производительности составил 5%.
FastMM 5 имеет двойную лицензию: бесплатную (соответствующую GPL v3) и коммерческую. Интересно, на сколько разработчиков компания Embarcadero купила лицензий и платила ли вообще?
FastMM 5 имеет двойную лицензию: бесплатную (соответствующую GPL v3) и коммерческую. Интересно, на сколько разработчиков компания Embarcadero купила лицензий и платила ли вообще?
19 июля 2023
NativeInt в Delphi 12 стал "слабым" псевдонимом
В работе с целочисленными типами у компилятора Delphi 12 произошло существенное изменение, которое повлияет на перегрузку процедур/функций и совместимость 32-х и 64-х битного кода. Речь идет о "плавающем" типе NativeInt (NativeUInt). В 32-х битном приложении он эквивалентен типу Integer, а в 64-х битном типу Int64. К тому же размер NativeInt эквивалентен размеру указателя в выбранной платформе (4 или 8).
Подписаться на:
Сообщения (Atom)