Классика баз данных - статьи

       

и непосредственно используют выбранные из


манипулируют с объектами ООБД (возможно, с помощью языка

запросов) и непосредственно используют выбранные из базы данных

объекты путем процедурного вызова методов.

Естественно, что язык программирования ООБД сам должен быть

объектно-ориентированным. Следовательно, в нем должны содержаться

средства определения типов и классов с желательной поддержкой

наследования. Но типы и классы, определяемые в прикладной

программе, должны естественно сопрягаться с типами и классами

ООБД. Поэтому вполне закономерно нагрузить язык программирования

ООБД и функцией определения схемы ООБД, т.е. набора типов и

классов, которые впоследствии станут внешней средой прикладных

программ.

При выполнении этой второй функции процедурная часть языка

программирования ООБД служит для определения методов объектов. С

точки зрения прикладного программиста методы могут

рассматриваться как "внешние" атрибуты объекта (в отличие от его

"внутренних" атрибутов, содержащихся в переменных состояния

объекта). Другими словами, в терминах, более привычных для

области баз данных, набор методов объекта в некотором смысле

представляет определенное в реализации представление (view)

объекта.

Заметим, что хотя во многих практически используемых языках ОО

программирования (например, в Си++) допускается прямой доступ к

переменным состояния объекта, если эти переменные соответствующим

образом специфицированы, с точки зрения программиста (ООБД или

приложения) полная инкапсуляция объекта (т.е. доступ к переменным

состояния только через методы объекта) является более

естественной и удобной.

Языки программирования ООБД обеспечивают (или, по крайней мере,

должны обеспечивать) унифицированный стиль программирования ООБД

и приложений. Основная разница состоит в том, что приложение

работает в среде ООБД (и программируется в среде схемы ООБД).

Приложение должно иметь возможность выбирать объекты ООБД. Для

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

язык программирования ООБД должен быть более или менее тесно (и


Содержание  Назад  Вперед