Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УЧЕБНОЕ ПОСОБИЕ Глухова Лилия Александровна 2007.pdf
Скачиваний:
568
Добавлен:
15.06.2014
Размер:
921.37 Кб
Скачать

4. Элементарная конструкция.

Элементарными являются те компоненты, которые не разлагаются дальше на подкомпоненты.

Например, это первая запись R и запись R (см. рисунок 4.15). Подкомпонент может оказаться элементарным, потому что его нельзя

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

4.4.2. Построение структур данных

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

Рисунок 4.16 представляет пример файловойиерархической структуры данных.

Файл F

Заголовок

Тело файла

Завершитель

 

 

 

 

 

 

 

 

 

 

 

 

 

О

 

 

О

 

*

 

 

*

(8)

H1

 

H2

 

 

 

 

 

 

 

Транзакция

 

 

Z

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

О

 

О

Вклад Изъятие

Рисунок 4.16 – Файловая иерархическая структура данных

На данном рисунке: файл F – это последовательность, заголовок – выбор, тело файла – повторение транзакций, завершитель – повторение, транзакция - выбор. В данной структуре нельзя убрать компонент«Тело файла», так как в этом случае последовательность «Файл F» будет состоять из трех компонентов, вторым среди которых является«Транзакция». Но «Транзакция» - это повторение, то есть «Транзакция» может присутствовать в файле любое число

83

раз. Однако в последовательности любой компонент должен встретиться ровно один раз.

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

Помимо иерархической структуры данных широко используется сетевая

иреляционная структуры данных.

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

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

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

Пример простой сети данных представляет рисунок4.17. Рисунок 4.18

показывает возможный

вариант упрощенного

иерархического вида тех же

данных.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Организация

 

 

Клиент

 

Фамилия

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Счет

Продукция

Транзакция

Рисунок 4.17 – Пример простой сети данных

84

Организация

*

Клиент

*

Продукция

*

Счет

*

Транзакция

Рисунок 4.18 –Иерархический вид сетевой структуры данных

При реляционной структуре данные представляются в вид последовательностей таблиц. Рисунок 4.19 представляет таблицу, состоящую из пяти строк и шести столбцов.

Сами таблицы представляют собой простые иерархии. Р сунок 4.20 иллюстрирует два способа иерархического представления таблицы, состоящей из пяти строк и шести столбцов[16]. На данном рисунке в скобках справа от

соответствующего компонента приведено количество повторений данного компонента.

Таким образом, большинство реальных наборов данных может быть представлено в виде иерархий или совокупностей иерархий.

Описание структур данных является первым этапом проектирования программы по методу Джексона. На втором этапе описывается взаимосвязь между структурами данных и программой.

85

Строки

Столбцы

1

2

3

4

5

6

1

2

3

4

5

Рисунок 4.19 – Реляционная структура данных – представление в виде таблиц

Таблица

 

Таблица

 

 

 

 

 

 

 

 

 

 

*

(5)

*

(6)

Строка

 

Столбец

 

 

 

 

 

 

 

 

 

*

(6)

Элемент

*

(5)

Элемент

 

 

 

 

 

 

 

 

 

а)

б)

 

 

Рисунок 4.20 – Иерархическая структура таблиц: а) – представление таблицы в виде набора строк; б) – представление таблицы в виде набора столбцов

86