пятница, 18 марта 2011 г.

Структура программы и синтаксис

Перевод из справочной системы Delphi

Завершенное, исполняемое Delphi приложение состоит из модулей, связанных между собой одним файлом программного кода, называемым файлом проекта. В традиционном программировании на Pascal весь программный код, включая основную программу, хранится в файлах .pas. Инструментарий Embarcadero использует расширение .dpr чтобы отличать модуль основной программы от прочих модулей, имеющих традиционное расширение .pas. Чтобы скомпилировать проект, компилятору необходим файл с программным кодом проекта и файлы с программным кодом модулей или скомпилированные модули для всех остальных частей программы.


Важно: Строго говоря, вы можете не подключать явно никаких модулей к проекту, но модули System и SysInit будут подключены автоматически.

Программный код для исполняемого приложения Delphi содержит:

  • Заголовок программы
  • Раздел подключения модулей (необязателен)
  • Блок объявлений и исполняемых инструкций

Кроме того, программа RAD Studio может содержать раздел пространства имен, для объявления дополнительных пространств имен, в которых будет выполняться поиск модулей. Эта тема раскрыта более подробно в секции Использование пространств имен в Delphi.

Компилятор и, следовательно, IDE ожидают найти эти три элемента в едином файле проекта (.dpr).

Заголовок программы

Заголовок программы определяет имя исполняемого файла программы. Он состоит из зарезервированного слова program, за которым следует допустимый идентификатор и точка с запятой. Для приложений, разработанных при помощи инструментария Embarcadero, идентификатор должен совпадать с именем файла проекта.

Следующий пример показывает файл программного кода проекта для программы Editor. Поскольку программа называется Editor, этот файл проекта назван Editor.dpr.

program Editor;

  uses Forms, REAbout, // An "About" box
       REMain;         // Main form

  {$R *.res}

  begin
   Application.Title := 'Text Editor';
   Application.CreateForm(TMainForm, MainForm);
   Application.Run;
  end.

Первая строчка содержит заголовок программы. Раздел подключения модулей в этом примере определяет зависимость от трех дополнительных модулей: Forms, REAbout и REMain. Директива компилятора $R линкует файл ресурсов в программу. Наконец, блок инструкций между ключевыми словами begin и end исполняется при запуске программы. Файл проекта, как и все файлы программного кода в Delphi завершается точкой (а не точкой с запятой).

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

В стандартном Pascal заголовок программы может включать параметры, которые указываются после имени программы:

program Calc(input, output);

Embarcadero Delphi игнорирует эти параметры.

В RAD Studio заголовок программы представляет свое собственное пространство имен, называемое пространством имен проекта по умолчанию.

Раздел подключения модулей

В раздел подключения модулей перечисляются модули, встроенные в программу. Эти модули могут в свою очередь иметь собственные разделы подключения модулей. Более подробно о разделе подключения модулей в файлах программного кода модулей смотрите ниже секцию Связи модулей и разделы подключения модулей.

Раздел подключения модулей состоит из ключевого слова uses, за которым следует список модулей, от которых проект зависит напрямую, разделенных запятыми.

Блок инструкций

Блок инструкций содержит простые или составные инструкции, которые выполняются при запуске программы. В большей части файлов программ блок инструкций состоит из набора инструкций, заключенных между зарезервированными словами begin и end и представляют собой простые вызовы методов объекта Application. Большинство проектов имеют глобальную переменную Application, которая содержит ссылку на экземпляр Forms.TApplication, TWebApplication, или SvcMgr.TServiceApplication. Блок инструкций может также содержать объявления констант, типов, переменных, процедур и функций. Эти объявления должны предшествовать блоку инструкций. Необходимо помнить, что за ключевым словом end, которое представляет конец программного кода должна следовать точка (.):

begin
  .
  .
  .
end.

Комментариев нет:

Отправить комментарий