Cтраница 4
![]() |
Задание структур простых модулей. [46] |
Структура программного модуля имеет существенное значение при выполнении циклических, итеративных и рекуррентных вычислений. Общим свойством любой структуры модуля служит то, что конечный результат работы модуля формируется его последней ( завершающей) строкой. При формировании структуры пользователь может опираться на предварительный анализ алгоритма вычислений и заранее определить число и взаимное расположение маркеров ввода в структуре программного модуля. Обычно, при решении достаточно сложных задач определить элементы структуры модуля точно не удается. В этих случаях, при формировании структуры возникает необходимость ее дополнения или изменения вида ( добавление или изъятие вложенных циклов и проч. Операции изменения некоторого варианта уже созданной структуры любого вида осуществляются вводом необходимых операторов в тело программного модуля. [47]
Оно позволяет определить, подходит ли в каждом конкретном случае одна из создаваемых случайным образом компоновок. Если указываемая область меньше, чем выбранные объекты, средство построения диаграмм использует только форму этой области и компонует объекты в области, достаточной для их размещения. Если ничего не выбрано, то пункты меню Same Area ( та же область) и New Area ( новая область) недоступны. Если нужно разместить все или выбранные таблицы в границах определенного прямоугольника или в некоторой части области изображения, можно воспользоваться заданной формой. Если между моментами компоновки не выполняется никаких операций, то с помощью автокомпоновки можно вернуться к любой ранее созданной структуре элементов. [48]
В рамках этого же метода структурного проектирования имеется интересная методика качественной оценки получившейся структуры с целью ее улучшения. Эта методика никак не связана с тем, каким методом выполнено первоначальное структурирование, и поэтому носит достаточно универсальный характер. Основная идея методики состоит в том, что любая программа или программная система должна состоять из набора простых и мало зависимых друг от друга модулей. В этом случае ее легко понять, создать и модифицировать. Поэтому основные усилия направляются на то, чтобы обеспечить минимально возможную зависимость модулей друг от друга. Анализ позволяет выявить модули, в которых нарушается это главное условие, и помогает найти пути переструктурирования. Скорость работы программы и объем памяти отступают на этом этапе на второй план. Если созданная программа не удовлетворяет требованиям скорости работы или объема занимаемой памяти, то определяются критические модули, от которых в первую очередь зависят характеристики программы, и осуществляется их оптимизация. Такая работа не должна вызвать затруднений, так как предполагается, что созданная структура хорошо приспособлена к процессу внесения изменений. [49]