с языком Си средство итерации.
множества и списки). Для значений-множеств и списков
поддерживаются операции добавления и изъятия элементов, а также
набор теоретико-множественных операций (и конкатенации для
списков).
Основой манипулирования объектами, хранимыми в БД, является
расширенное по сравнению с языком Си средство итерации. Итератор
применим к значениям-множествам или спискам. Фактически он
означает последовательное применение оператора-тела цикла ко всем
элементам множества или списка. Если мы вспомним, что
долговременно хранимому классу объектов неявно соответствует
одноименное значение-множество с элементами-объектами данного
класса, то становится понятно, что итератор языка CO2
обеспечивает явную навигацию в классах объектов. Единственное,
что остается от привычных пользователям СУБД языков запросов, -
это ограниченная возможность указания характеристик требуемых в
цикле объектов (это делается путем использования оператора
разыменования и явного указания условий на атрибуты; конечно, для
этого нужно, чтобы оператор '*' был объявлен публичным в данном
классе).
Разработчики O2 подчеркивают, что они умышленно сделали CO2 более
бедным по возможностям, чем, например, язык Си++, потому что
многое по части управления объектами берет на себя общий менеджер
объектов системы, явно вызываемый из рабочей программы.
Потребность в поддержании в объектно-ориентированной СУБД не
только языка (или семейства языков) программирования ООБД, но и
развитого языка запросов в настоящее время осознается практически
всеми разработчиками. Система должна поддерживать легко
осваиваемый интерфейс, прямо доступный конечному пользователю в
интерактивном режиме. Один из подходов основывается на
поддержании обходчиков . В этом случае конечный интерфейс
обычно является графическим. На экране отображается схема (или
подсхема) ООБД, и пользователь осуществляет доступ к объектам в
навигационном стиле. По мнению Бансилона в этом случае
разумно игнорировать принцип инкапсуляции объектов и предъявлять
Содержание Назад Вперед