Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Л-4(EXPRESS) / Конспект лекций.doc
Скачиваний:
66
Добавлен:
16.05.2015
Размер:
567.3 Кб
Скачать

Слайд 33. Множество (set)

Пояснения

Элементы типа «Множество» неупорядочены, размер множества по умолчаниюне фиксирован. При этомне допускается наличие во множестве одинаковых элементов. С помощью множества можно, например, представить все население земного шара. На Земле нет двух одинаковых людей, причем люди неупорядочены и их численность продолжает увеличиваться. При обозначении множества используется ключевое слово «SET». Размеры множества задаются аналогично списку.

На слайде приведены примеры объявления множеств:

  • SETOFpoint- множество из одного или более элементов типаpoint;

  • SET[0:15]OFpoint-множество из 16-ти элементов типаpoint.

Слайд 34. Мультимножество (bag)

Пояснения

Тип данных «BAG» представляет собой так называемое «мультимножество» значений, т.е. множество свозможностью повторения элементов. Остальные свойства мультимножества аналогичны типу «SET»: элементынеупорядочены, а количество значений по умолчаниюне фиксировано. К примеру, мультимножеством может быть представлен перечень всех деталей изделия, в котором какая-либо деталь (скажем, винт) может встречаться много раз. При обозначении мультимножества используется ключевое слово «BAG». Размеры мультимножества задаются аналогично списку.

На слайде приведены примеры объявления мультимножеств:

  • BAGOFpoint– мультимножество из неограниченного количества элементов типаpoint;

  • BAG[1: ?]OFpoint– неограниченное сверху мультимножество из элементов типаpoint.

Слайд 35. Многомерные агрегированные типы

Пояснения

Агрегированные типы языка EXPRESSявляютсяодномернымипо своей природе. Однако вEXPRESSсуществует возможность заданиямногомерных агрегированных типов. Для этого необходимо задать в качестве базового типа одного агрегированного типа другой агрегированный тип. Таким способом можно задавать агрегированные типы неограниченной вложенности, поддерживающие произвольное количество измерений. На слайде объявлено множество списков, содержащих элементы типаINTEGER.

Слайд 36. Поименованный тип

Пояснения

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

Тип данных «Сущность»автоматически объявляется одновременно с объявлением самой сущности в информационной модели. Типу данных «Сущность» присваивается идентификатор сущности, который используется в дальнейшем для ссылок на этот тип.

Определяемый тип данныхзадается на основе какого-либо другого типа данных, в том числе и другого определяемого типа. С его помощью можно наложить некоторые ограничения на тот тип данных, на основе которого он создан и, таким образом, расширить выразительные возможности языкаEXPRESSпутем создания типа данных с новыми свойствами. Например, можно создать новый определяемый тип данных «length» (длина), взяв за основу встроенный целочисленный типREALи наложив требование неотрицательности его значений. Таким образом, будутрасширены выразительные возможности языка EXPRESS, т.к. в нем нет встроенного типа с неотрицательными целочисленными значениями. Вполне возможен вариант, при котором определяемый тип не накладывает никаких ограничений на свой базовый тип. В таких случаях определяемый тип используется для повышения наглядности информационной модели или для простоты управления ею (например, изменения).

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