Montes и банковского оборудования шкафы архивные.
|
Основы объектно-ориентированного представления программных систем - Модульность |
Страница 3 из 39
Модульность
В языках C++, Object Pascal, Ada 95 абстракции классов и объектов формируют логическую структуру системы. При производстве физической структуры эти абстракции помещаются в модули. В больших системах, где классов сотни, модули помогают управлять сложностью. Модули служат физическими контейнерами, в которых объявляются классы и объекты логической разработки. Модульность определяет способность системы подвергаться декомпозиции на ряд сильно связанных и слабо сцепленных модулей. Общая цель декомпозиции на модули: уменьшение сроков разработки и стоимости ПС за счет выделения модулей, которые проектируются и изменяются независимо. Каждая модульная структура должна быть достаточно простой, чтобы быть полностью понятой. Изменение реализации модулей должно проводиться без знания реализации других модулей и без влияния на их поведение. Определение классов и объектов выполняется в ходе логической разработки, а определение модулей — в ходе физической разработки системы. Эти действия сильно взаимосвязаны, осуществляются итеративно. В Ada 95 мощным средством обеспечения модульности является пакет. Пример: пусть имеется несколько программ управления полетом летательного аппарата (ЛА) — программа угловой стабилизации ЛА и программа управления движением центра масс ЛА. Нужно создать модуль, чье назначение — собрать все эти программы. Возможны два способа. 1. Присоединение с помощью указателей контекста: with Класс_УгловСтабил, Класс_ДвиженЦентраМасс; use Класс_УгловСтабил, Класс_ДвиженЦентраМасс; Package Класс_УпрПолетом is … 2. Встраивание программ управления непосредственно в объединенный модуль: Package Класс_УпрПолетом is type УгловСтабил is tagged private; type ДвиженЦентраМасс is tagged private; -------------------------
|