Реклама:

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

- Являются ли выбранные части каждого выбора независимыми и не связанными на более высоком уровне структуры? Иначе говоря, выполняется ли каждый выбор на подходящем для этого уровне?

- Предусматривает ли требуемый процесс последовательность действий, для которой нужна последовательность появления данных, отличающаяся от доступной?

Здесь не проводилось обсуждение всех этих необходимых действий для случая, когда на некоторые из приведенных выше вопросов получены отрицательные ответы. Такие действия будут рассмотрены и объяснены в соответствующих главах книги.

Мы полагаем, что читатель уже получил достаточное представление о формировании структур данных. Так двинемся же дальше!

Отметим, что для объяснения метода конструирования использовался упомянутый выше процесс описания требуемой структуры выходных данных относительно структуры входных данных на рис. 2.31. Структура выходных данных показана на рис. 2.32.

Кинг Д. Создание эффективного программного обеспечения

Рис. 2.32. Структура выходного файла.

Требуемый выход представляет собой простой отчет. Первой частью отчета является заголовок, который состоит из двух последовательных частей: типа файла, а затем даты создания файла. Оба этих элемента будут извлекаться непосредственно из входного файла. Вторая часть отчета немного сложнее. Она состоит из трех последовательных частей, каждая из которых представляет собой результат подсчета входных записей одного из типов (Т, М или Б).

Входной файл типа ГГ, ГМ или Г5 в зависимости от того, относится ли большинство записей в файле соот-ветственно к типу Т, М или Б.

идентификация соответствий между структурами данных

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

Однако, прежде чем продвигаться дальше, рекомендуется еще раз рассмотреть структуры данных при участии пользователя задуманной системы, частью которой будет эта программа. Во многих случаях пользователь не вполне поймет все нюансы структур данных, но он должен после минимальных объяснений понять их, если эти структуры действительно представляют его данные. Часто такой контакт обеспечивает основательное дополнительное проникновение в действительную сущность подлежащих обработке данных и может выявить необходимость тех изменений в структурах, внесение которых на более поздних стадиях разработки программы потребовало бы больших затрат. Во всех случаях окончательный пользователь должен быть в курсе всех этапов конструирования и разработки программ и системы и фактически должен входить в бригаду разработчиков. (Если пользователем окажется читатель, это вполне оправдывает его ознакомление с книгой. )


⇐ Предыдущая страница| |Следующая страница ⇒