Приложения к ТехЭдитору состоят из модулей. Рассмотрим структуру типового модуля такого приложения.
При добавлении нового модуля в приложение, Application IDE создает заготовку следующего формата:
Данная заготовка реализует не весь потенциал скрипта. В общем случае, модуль приложения может содержать:
- блок ссылок на другие модули
- блок определения глобальных переменных
- блок определения глобальных констант
- блок определения процедур и функций
- блок выполнения
Каждый из этих блоков необязателен, но в модуле должен присутствовать хотя бы один из них.
Обращение к другим модулям приложения
Блок ссылок на другие модули начинается словом "uses" и размещается, как правило, в самом начале модуля:
uses
Unit1, Classes;
begin
end;
В данном примере модуль ссылается на пользовательский модуль Unit1 и базовый (программный) модуль Classes.
Ссылочные модули перечисляются через запятую.
Блок определения переменных
Глобальные переменные модуля доступны в рамках всего приложения:
var Diameter12: Double;
Notification: string;
x, y;
Обратите внимание, что в TechEditor допустим вариант определения переменной без явного указания ее типа. Однако, с точки зрения наглядности, такая форма записи не рекомендуется.
Блок определения констант
Глобальные константы модуля также доступны в рамках всего приложения:
const
PI = 3.14;
BOLT_D = 20;
Блок определения подпрограмм
Блок определения подпрограмм содержит код процедур и функций, которые могут использоваться в данном модуле или других модулях приложения, которые на него ссылаются. Если процедура A используется в процедуре B, то процедура A должна быть описана до процедуры B.
Пример модуля с одной подпрограммой:
function Rb: Double;
begin
Result := 10.5;
end;
Выполнение модуля
Блок выполнения содержит код, который будет выполнен сразу после запуска приложения (при условии, что приложение стартует с данного модуля). Запуск команд происходит последовательно, сверху вниз, слева направо.
Как правило, блок выполнения располагается между операторными скобками begin..end:
begin
ShowMessage('TechEditor is the best solution for engineer!');
end;
Однако возможен и упрощенный вариант записи:
ShowMessage('TechEditor is the best solution for engineer!');
Повторение блоков
В ТехЭдиторе, модуль может содержать неограниченное число блоков для определения переменных и констант:
const
T = 'text';
procedure Proc;
begin
end;
var
a, b;
function R: Integer;
begin
end;
Однако, с точки зрения читабельности кода, глобальные переменные и константы рекомендуется размещать в начале модуля, сразу после блока "uses". Также эффективным считается вариант вынесения всех переменных и констант приложения в отдельный модуль.