Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка DELPHI.DOC
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.73 Mб
Скачать

Структура модуля

Модуль является программной единицей для хранения элементов программирования. Модули бывают двух типов:

  • стандартные, заранее созданные разработчиками Delphi и включенные в среду программирования;

  • модули разработчика, создаваемые программистом.

Модуль состоит из следующих частей:

  • заголовок (Unit);

  • интерфейс (nterface);

  • исполнительная часть (Implementation);

  • секция инициализации (Initialization);

  • секция завершения (Finalization);

  • ключевое слово end с точкой.

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

Заголовок начинается с ключевого слова Unit, за которым следует имя. Имя модуля используется как имя файла, в который записывается текст программы. Delphi по умолчанию присваивает имя Unit1 - в дальнейшем это имя можно изменить при сохранении файла.

Интерфейс модуля – часть модуля доступная для других программных единиц. Интерфейс начинается с зарезервированного слова Interface. Заканчивается интерфейсная секция началом исполнительной части.

Исполнительная часть модуля начинается с ключевого слова Implementation, а завершается либо началом секции инициализации, если она есть, либо зарезервированным словом end. В этой секции определяются все процедуры и функции, методы классов и обработчики событий, объявленные в интерфейсной секции. Дополнительно могут содержаться определения программных элементов, которые не объявлены в интерфейсной части. Эти процедуры и функции являются недоступными для других программных единиц и используются для выполнения каких-либо внутренних действий в данной секции.

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

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

Примером встроенного библиотечного модуля является модуль Forms, который содержит методы, позволяющие построить форму. Ниже приводится пример модуля:

Unit Unit1;

Interface

Uses {Подключаемые модули}

Windows, Messages, SysUtils, Classes,

Graphics, Controls, Forms, Dialogs, StdCtrls;

Type {Объявления типов используемых переменных}

TForm1 = class(TForm)

Edit1: TEdit;

Button1: TButton;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

end;

var { Объявления переменных}

Form1: TForm1;

F: TextFile;

S: String;

Implementation

{$R *.DFM} {Загрузка файла ресурсов формы}

procedure

TForm1.Button1Click(Sender: TObject);

begin

S:=Edit1.Text; {Чтение строки S}

Edit1.Text:='';

end;

procedure

TForm1.Button2Click(Sender: TObject);

begin

Close;

end;

Initialization

AssignFile(F,’Myfile.txt’);

Rewrite(F); {Открытие файла }

Finalization

WriteLn(F,S); {Запись в файл строки S}

CloseFile(F); {Закрытие файла }

end.

Текст этой программы записывается в файл Unit1.pas, автоматически создается файл ресурсов для формы, который будет иметь имя Unit1.dfm.

Данная программа открывает файл Myfile.txt и записывает туда строку S, которая вводится с клавиатуры, используя объект Edit1.

Структура DLL будет описана далее.

При запуске приложения на выполнение сначала формируется выполняемый файл. Этот процесс делится на две стадии. Во-первых, компилятор транслирует исходный текст кода программы и формирует двоичный объектный код (в частности, создается файл Unit1.dcu для откомпилированных файлов Unit1.pas и Unit1.dfm в данном случае). Во-вторых, компоновщик связывает полученный объектный код со встроенными библиотечными объектными кодами модулей. В результате создается исполняемый файл, в данном случае, Project1.exe.