Implementation
Interface
Структура модуля
Модуль – это самостоятельная отдельно компилируемая программная единица, поэтому его структура напоминает структуру обычной программы:
1. заголовок модуля
2. интерфейсный раздел
3. раздел реализации
4. инициирующий раздел.
Собственно программный код располагается в исполняемой части, иногда в инициирующей. Заголовок и интерфейсная часть задают название модуля и перечисление всех программных элементов, которые представляет этот модуль тем программам или другим модулям, которые будут его использовать. Исходный текст модуля, как и любой Паскаль-программы, содержится в файле с расширением имени .pas. После компиляции модуля на диске создается файл с объектным кодом и расширением имени .tpu. (Turbo Pascal Unit).
Заголовок модуля содержит слово Unit и имя модуля:
Unit Abc;
Это имя указывается в разделе Uses программы, которой необходим доступ к этому модулю. Имя модуля должно совпадать с именем того файла, в который помещается исходный текст модуля.
Интерфейсный раздел обеспечивает взаимодействие данного модуля с головной программой и другими модулями. В нем объявляются глобальные, то есть доступные другим модулям и головной программе объекты: константы, типы, переменные, заголовки функций и процедур:
Uses список модулей, используемых интерфейсным разделом
Const объявление глобальных констант
Type объявление глобальных типов
Var объявление глобальных переменных
Function заголовки функций и процедур со списками формальных
Procedure параметров, видимых другим модулям и головной программе
Раздел реализации содержит описание функций и процедур, заголовки которых представлены в интерфейсном разделе. Кроме того, здесь могут быть объявлены локальные, то есть доступные только в пределах данного модуля метки, константы, типы и переменные, если они применяются в инициирующем разделе:
Uses список модулей, используемых разделом реализации (скрытых)
Const объявление локальных констант
Type объявление локальных типов
Var объявление локальных переменных
Function описание указанных ранее функций и процедур без списка Procedure формальных параметров
Этот раздел скрыт от вызывающей программы и других модулей.
В инициирующем разделе могут содержаться операторы, которые до передачи управления вызывающей программе или модулям выполняют некоторые подготовительные действия, например, инициализацию глобальных переменных или открытие необходимых файлов: