Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы_часть1.doc
Скачиваний:
2
Добавлен:
22.04.2019
Размер:
156.67 Кб
Скачать

1.19 Типы классов в Cache.

В соответствии со стандартом в Cache реализовано два типа классов:

Классы типов данных (литералы).

Классы объектов (объекты).

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

Классы типов данных подразделяются на два подкласса типов:

Атомарные

Структурированные

Атомарными литеральными типами в Cache являются традиционные скалярные типы данных (%String, %Integer, %Float, %Date и др.). В Cache реализованы две структуры классов типов данных - список и массив. Каждый литерал уникально идентифицируется индексом в массиве или порядковым номером в списке.

Рисунок 2. Объектная модель Cache

Различают два подтипа классов объектов - зарегистрированные и незарегистрированные. Зарегистрированные классы обладают предопределенным поведением, т.е. набором методов, наследуемых из системного класса %RegisteredObject и отвечающих за создание новых объектов и за управление размещением объектов в памяти. Незарегистрированные классы не обладают предопределенным поведением, разработка функций (методов) класса целиком и полностью возлагается на разработчика.

Зарегистрированные классы могут быть двух типов - сериализуемые и хранимые. Сериализуемые классы наследуют свое поведение от системного класса %SerialObject. Основной особенностью хранения сериализуемого класса является то, что объекты сериализуемых классов существуют в памяти как независимые экземпляры, однако могут быть сохранены в базе данных, только будучи встроенными в другой класс.

Основным преимуществом использования сериализуемых классов является минимум издержек при изменении структуры класса.

1.20 Язык Cache Objoct Script. Основные характеристики.

В СУБД Caché реализован собственный язык программирования Caché Object Script (COS). COS — это расширенная и переработанная версия языка программирования M

(ANSI MUMPS). В первую очередь, COS предназначен для написания исходного кода ме-

тодов класса. Кроме этого, в Caché вводится понятие Caché-программы. Caché-программа

не является составной частью классов и предназначена для написания прикладного про-

граммного обеспечения для текстовых терминальных систем.

Особенности языка Object Script:

• Язык не имеет зарезервированных слов: вы свободны в выборе имен идентификато-

ров, также как и имен переменных. Например: set set=12, где первый set – это коман-

да, второй – это имя переменной.

• Не является языком строгой типизации. Используемые переменные не требуют пред-

варительного объявления.

• Имеется большой набор встроенных функций, которые отличаются наличием знака $

перед именем функции. Например: $Piece, $Select и т.д.

• Существует довольно много встроенных команд языка. Например: write, read и т.д.

• Поддержка работы с классами и объектами.

• Поддержка работы с многомерными массивами.

• Широкий набор функций для прямого управления потоками внутри приложений.

• Набор команд ввода/вывода.

• Поддержка встроенного SQL.