Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекция по ТРПО последняя.docx
Скачиваний:
46
Добавлен:
27.09.2019
Размер:
174.48 Кб
Скачать

Реализация объектов. Модуль

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

Модуль характеризуют:

  1. Один вход и один выход. На входе модуль получает определенный набор исходных данных. Выполняет содержательную обработку и возвращает один набор результатных данных, т.е. реализуется стандартный принцип. Вход – процесс – выход.

  2. Функциональная завершенность. Модуль выполняет перечень регламентированных операций для реализации каждой отдельной функции в полном составе. Достаточных для завершения начатой обработки.

  3. Логическая независимость. Результат работы программного модуля зависит только от исходных данных, но не зависит от работы других модулей.

  4. Слабые информационные связи с другими программными модулями. Обмен информацией между модулями должен быть по возможности минимизирован.

  5. Обозримый по размеру и

Таким образом модули содержат определение доступное для обработки данных, операции обработки данных схемы взаимосвязей с другими модулями. Каждый модуль состоит из спецификации и тела. Спецификация определяет правила использования модуля, а тело способ реализации процесса обработки.

Основная причина по которой обрабатываемое ПО разбивается на модули – это борьба со сложность ПО. Принципы модульного программирования позволяют получать программные комплексы минимальной сложности. Для этого придерживаются следующих принципов:

  1. Усиление внутренних связей в каждом модуле.

  2. Ослабление взаимосвязей между модулями.

Цели модульного программирования:

  1. Улучшать читательность программы.

  2. Повышать эффективность и надежность программ (легко находить и корректировать ошибки).

  3. Уменьшать время и стоимость программной разработки за счет многократного использования модулей и уменьшение времени отладки.

Разбиение программного комплекса на модули выполняется в соответствии со следующими принципами:

  1. Модуль – это независимый блок от которого физически и логически отделен от кода других модулей.

  2. Размер модуля не более 100 операторов.

  3. Имеет одну входную и одну выходную точку.

  4. Модули связаны иерархически.

  5. Разбиение должно обеспечивать надежное скрытие информации модуля.

  6. Использовать только стандартные управляющие конструкции (условие, выбор, цикл).

  7. Каждый модуль должен начинаться с комментария, в котором указывается его назначение, входные и выходные переменные.

Состав и вид программных модулей, их назначение и характер использования в программе в значительной степени определяется инструментальными средствами. На языке Паскаль модуль реализуется через Unit, подключается в программе Uses crt, dos… В C++ реализуется через динамически загружаемую библиотеку DLL. В СУБД отдельными модулями могут быть экранные формы, отчеты, макросы и т.д.

Каждая исходная задача имеет алгоритм решения, который может быть представлен как композиция алгоритмов простых подзадач. Каждая подзадача может быть реализована с помощью функций и процедур или с помощью модулей. Поскольку каждая подзадача имеет структуру аналогичную структуре исходной основной программы, то можно продолжить детализацию каждой из подпрограмм (принцип декомпозиции).

При определении набора модулей реализующей функции алгоритма необходимо учитывать следующее:

  1. Каждый модуль вызывается на выполнение вышестоящим модулем и закончив работу возвращает управление вызвавшему его модулю.

  2. Принятие основных решений в алгоритме выносится на максимально высокий по иерархии уровень.

  3. Для использования одной и той же функции в разных местах алгоритма создается модуль, который вызывается на выполнение по мере необходимости.

В

Функция 1

Модуль 1

Модуль 2

Модуль N

Функция 2

Модуль Х

результате дальнейшей детализации алгоритма создается функционально-модульная схема алгоритма приложения, которая является основой для программирования. Например

Функция 3

Модуль К

Модуль М

Модуль Y

Модуль Z

Функция 1 реализуется в виде последовательного выполнения программных модулей.

Функция 2 реализуется одним программным модулем. Функция 3 реализуется последовательным выполнением модулей К и М, причем модуль М управляет выбором выполнение подчененных модулей Y Z. в данном контексте функция рассматривает не как функция программы.

Реферат темы

  1. Выбор и обоснование языка программирования.

  2. Выбор и обоснование среды разработки для реализации проекта.

  3. Выбор и обоснование системы управления базами данных.