22. Модули
Повторное использование функций и процедур, оформленных в виде отдельных файлов, называется модулем.
Программа состоит из главной программы и (возможно) нескольких модулей.
Применение модулей позволяет:
использовать метод бригадного программирования,
сократить объем основной программы,
облегчить процесс отладки,
отлаживать программу по частям,
при изменении модуля перекомпилируется только он, а не вся программа.
По своей структуре Модуль = Программа.
Может храниться и компилироваться отдельно.
Модуль– это самостоятельная часть программы, имеющая определенное назначение. Модуль не используется автономно, а только в составе программы.
Может использоваться другими программами или модулями. Чтобы использовать средства модуля, его необходимо подключить, указав имя этого модуля в разделе using
Компилятор распознает модуль по его заголовку, и после компиляции создает объектный код.
22.1 Свойства модуля
Модуль имеет:
один вход и один выход– на входе программный модуль получает определенный набор исходных данных, выполняет обработку данных и возвращает один набор результатных данных;
функциональную завершенность– модуль выполняет перечень операций для реализации каждой отдельной функции в полном составе, достаточных для завершения начатой обработки;
логическую независимость– результат работы модуля зависит только от исходных данных, и не зависит от работы других модулей;
слабые информационные связис другими программными модулями – обмен информации между модулями должен быть по возможности минимизирован;
обозримый по размеру и сложностипрограммный элемент.
Приложения имеют модульную структуру. Модуль состоит из:
Спецификации– правила использования модуля и
Тела– способа реализации процесса обработки.
При составлении алгоритма необходимо учитывать:
каждый модуль вызывается на выполнение вышестоящим модулем и, закончив работу, возвращает управление вызвавшему его модулю;
принятие основных решений в алгоритме выносится на максимально «высокий» по иерархии уровень;
для использования одной и той же функции в разных местах алгоритма создается один модуль, который вызывается на выполнение по мере необходимости.

Функция 1 иФункция 2 выполняются с помощью одного и того же Модуля1.
Функция 3 реализуется одним программным Модулемv.
Функция 4 – в виде последовательности выполнения Модулей (2, 3 . . .p).
Функция 5 –с помощью иерархии связанных модулей.
22.1. Структура модуля
Модуль имеет следующую структуру:
Заголовок (имямодуля),
Интерфейс (описание)
Реализация (действия),
Конец (завершение модуля).
Имя модуляслужит для его связи с другими модулями и основной программой. Например:using System; // Заголовок
В описательной частисодержитсяобъявлениевсехглобальныхобъектов модуля (типов, констант, переменных и методов), которые должны стать доступными основной программе и/или другим модулям.
В исполняемой части содержитсяописанияметодов, объявленных в интерфейсной части. В ней могут объявлятьсялокальныедля модуля объекты – вспомогательные типы, константы, переменные, если они используются в интерфейсной части.
Окончание завершает модуль.
