Труды КНЦ вып.9 (ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ) вып. 9/2019(10)
создавать массивы для хранения произвольных структур, несмотря на то, что сами пользовательские типы данных определяются без особого труда. Создание массивов пользовательских типов средствами таких СУБД требует описания на одном из объектно-ориентированных языков самого массива, а также операторов преобразования массива в строку и обратно. Постреляционные СУБД позволяют хранить функции обработки данных, использующие в качестве параметров определяемые пользователем типы. В PostgreSql поддерживается возможность множественного наследования таблиц, которая вызывает ряд проблем (например, уникальность значений ключевых полей таблиц-наследниц). Проблемы возникают из-за неадекватности отображения “объектный класс - таблица”, характерного для постреляционных СУБД [3]. Реляционную таблицу нельзя считать аналогом объектного класса, несмотря на то, что она тоже описывается набором атрибутов, по следующим причинам: • Таблица, в отличие от объектного класса, является коллекцией однотипных объектов. В связи с этим, таблица должна иметь ключевой атрибут, который не характерен для объектного класса. • Таблица не имеет методов. Конечно, можно описать функции, работающие с данной таблицей. Но между вызовами “table.method(3)” и “procedure(table,3)” нельзя ставить знак равенства, поскольку разрушается инкапсуляция объектного класса - ключевая парадигма объектно- ориентированного программирования. Другими словами, более корректно отображение «динамический массив - таблица». Также постреляционные СУБД не поддерживают полиморфного поведения объектов, лежащих в одной иерархии наследования. Более того, если таблица содержит поле базового типа, то добавление объекта дочернего типа приводит к усечению последнего. Заключение Программирование в ограничениях является новым направлением, опирающимся на реляционное представление информации. Данное направление, по мнению авторов, не получило еще должного развития с точки зрения интеграции с объектно-ориентированным подходом. Принципиальное отличие технологии программирования ограничений от технологий управления данными состоит в том, первая предназначена для организации вывода на знаниях, а не манипулирования структурами данных. Отсутствие таких препятствий, как необходимость обеспечения одновременного доступа и целостности данных создает значительные предпосылки для упомянутой интеграции. В статье рассмотрены различные способы интеграции объектного и реляционного подхода в СУБД. Наиболее перспективным из представленных и наименее противоречивым видится направление ОРСУБД. Учитывая успешный опыт применения ОРСУБД, по мнению авторов, именно отображение «объектный класс - домен» должно лежать и в основе разрабатываемых способов интеграции парадигмы программирования в ограничениях с объектно- ориентированным подходом. Дальнейшие направления исследований в этой области предположительно будут связаны с разработкой контекстно-ориентированных механизмов формирования и активации систем ограничений на основе объектно 114
Made with FlippingBook
RkJQdWJsaXNoZXIy MTUzNzYz