15.МОДУЛИ (м). Модуль – автономно компилируемая программная ед-ца, включающая в себя различные компоненты разделы описаний: типы, константы, переменные, процедура, функции и некоторые исполняемые операторы, инициирующие части. М-и представляют собой инструмент для разработки библиотек прикладных программ и средства модульного программирования. Принцип модульного (м-го) програмиров-я заключается в том, что исходная задача разбивается на более простые подзадачи. Это разбиение делается так, чтобы в кач-ве подзадач фигурировали уже готовые, разработанные ранее программы. Компилятор турбопаскаль размещает програмный код м-ей в отдельный сегмент памяти. Кол-во одновременно используемых м-ей ограничив-ся только доступной помятью, что позволяет создавать очень большие программы. Отдельные м могут разрабатываться различными программистами, что позволяет использовать современные методы, технологии програмиров-я.
16. СТРУКТУРА МОДУЛЯ:
Unit <имя>;
Interface <интерфейсная часть>;
Implementation < исполняемая часть>;
Begin<инициирующая часть>;
End.
Unit – зарезервиров-е слово, в переводе ед-ца. Начинает заголовок м, к-й содержит кроме unit имя м. Имя м – правильный идентификатор Паскаля. Interface – служебное слово, переводится «интерфейс», явл-ся началом интерфейсной части м. Implementauion – зарезервиров-е слово, переводится «выполнение», начинает исполняемую часть м. Begin– начало, явл-ся зарезервиров-ным служебным словом, начинает инициирующую часть м. Конструкция begin, инициирующая часть необязательна и может быть опущена. End – зарезервиров-е слово переводится «конец»и обозначает признак конца м. М состоит из заголовков и 3-х составных частей, каждая из которых может быть пустой. Заголовок м состоит из зарезервированного слова unit и имени м . Через это имя и возможен доступ к м из программы. Сам м, т.е. его исходный текст, размещ-ся в дисковом файле, имя к-го совпадает с именем м, а расширение PAS (<имя >.PAS). Связь м с основной программой осущ-ся с помощью служебного слова uses («использует»), после к-го записывается имя м. (uses<имя>). Если объявление uses испоз-ся, оно должно открывать раздел описания основной программы. Uses в м может следовать за словом interface.
Unit<имя 1>;
Interface
Uses<имя 2>;
Но возможно объявление м-ей и в исполняемой части м. В этом случае слово uses следует сразу за implementation, т.е. допускается запись предложения uses и там и там. Интерфейсная часть открывается зарезервированным словом интерфейс и может содержать объявление всех глобальных объектов м, типов, констант, переменных, процедур, ф-ций. Глобальные объекты м, объявленные в интерфейсной части должны быть доступны основной программе и др. м-ям. Пример: unit cmplx;
Interface
Type
Complex=record
Re, im: real;
End;
Procedure AddC(x,y:complex; var z:complex);
Procedure Mu lc (x,y:complex; var z:complex);
End.
Если в основной программе после uses будет указано имя м, то в программе станут доступными (uses cmplx;) тип комплекс и 2 процедуры: Addc, Mulc. Объявление программ в интерфейсной части автоматически сопровождается их компиляцией с использованием дальней памяти. Все конструкторы и переменные, объявленные в интерфейсной части помещ-ся компилятором турбопаскаля в общей сегмент данных. Максимальная длина сегмента 65536 байт. Порядок объявления различных разделов интерфейсной части - произвольный, также произвольно кол-во объявленных разделов. Испольняемая часть начинается с зарезервир-го слова impementation и содержит описание подпрограмм, объявленных в интерфейсной части м, в ней могут объявляться локальные для м объекты, вспомогательные типы, константы, переменные и метки, если они использ-ся, в инициирующей части. Описанию подпрограммы, объявленной в интерфейсной части должен предшествовать заголовок, в кот. можно опускать список формальных параметров, т. к. эти параметры были уже описаны в интерфейсной части. Если заголовок в исполняемой части описывается полностью со списком формальных параметров, то он должен точно совпадать с заголовком интерфейсной части.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.