До сих пор мы говорили о модулях как о библиотеках - наборах
полезных подпрограмм, которые могут использоваться несколькими
программами. Однако, у модуля есть еще одна функция - разбивать
большую программу на составные части.
Два аспекта Borland Pascal способствуют использованию моду-
лей в такой функции:
* высокая скорость компиляции и компоновки;
* способность работать с несколькими файлами одновременно,
например, с программой и несколькими модулями.
Обычно большая программа разбивается на модули, которые
группируют процедуры по их функциям. Например, программа редакто-
ра может быть разделена на части, выполняющие инициализацию, рас-
печатку, чтение и запись файлов, форматирование и так далее. Так-
же, как имеется основная программа, определяющая глобальные конс-
танты, типы данных, переменные, процедуры и функции, так же может
иметь место и "глобальный" модуль, который используется всеми
другими модулями.
Набросок большой программы-редактора может иметь вид:
program Editor;
uses
WinCrt, String { стандартные модули из TPW.TPL }
EditGlobals, { модули, написанные пользователем }
EditInuit,
EditPrint,
EditRead, EditWrite,
EditFormat;
{ описание, процедуры и функции программы }
begin { основная программа }
end. { конец программы Editor }
Модули в данной программе могут содержаться в TPW.TPL, биб-
лиотеке исполняющей системы Windows, или быть отдельными файлами
.TPW. В последнем случае Borland Pascal выполняет за вас управле-
ние проектом. Это означает, что при перекомпиляции программы
Editor с помощью встроенного в компилятор средства формирования
Borland Pascal сравнивает даты каждого файла .PAS и .TPW и пере-
компилирует любой модуль, исходный код которого перекомпилирован.
Другая причина использования модулей в больших программах
состоит в ограничения кодового сегмента. Процессоры 8086 (и родс-
твенные им) ограничивают размер сегмента кода 64 килобайтами. Это
означает, что основная программа и любой данный сегмент на может
превышать 64К. Borland Pascal интерпретирует это, создавая для
каждого модуля отдельный сегмент кода. Без этого объем кода вашей
программы не мог бы превышать 64К.
Примечание: Подробнее о работе с большими программными
проектами рассказывается в Главе 4 "Программирование в ин-
тегрированной среде для DOS".