Объектно-ориентированные модели и роль наследования




Излагаемая в дальнейшем концепция необходима прежде, чем объектно-ориентированные модели могут быть подготовлены для установки и использования. Необходим механизм для упрощения и организации определения классов объектов. Этот механизм представлен в концепции наследования. Наследование означает, что возможно определить новый класс в терминах существующих классов. Новый класс может быть определен как спецификация существующего класса. Например, класс 'больница' может быть определен от существующего класса 'здание' добавлением дополнительных значений или атрибутов типа 'число койко-мест'. Использование этой методики приводит к деревьям классов или иерархий классов. Изменение на уровне суперкласса, скажем введение значения 'запись плановой санкции' применимое ко всем зданиям, размножается автоматически во всех производных подклассах.

Наследование также применяется к методам и поведениям, с условием, что должно быть возможно отменить поведение унаследованного метода, если оно несоответствует новому определяемому классу. Имеется много важных обстоятельств, в которых множественное наследование необходимо, так, чтобы иерархия классов устанавливалась графом скорее чем деревом. Это фундаментально для моделирования RWO's, которые берут некоторые характеристики от географических данных и других данных откуда бы то ни было, указывающих на сетевые связи. Объектно-ориентированная ГИС с полным выполнением наследования поддерживает систематическое определение спецификации приложений пользовательских классов, хранение и обработку географической или пространственной информации. Географическая информация получается и модифицируется из достоверных источников, которые не нуждаются в знании многообразных классов, используемых в приложениях.

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

Ключевое требование во многих GIS -приложениях - обслуживание целостности базы данных. Там, где эти требования касаются пользовательских методов, необходимые приготовления (customisation) могут быть перемещены из приложения в базу данных. В объектно-ориентированной базе данных, целостность может быть проверена, путем опроса каждого объекта, что делает метод самодостаточным (self-validation). Ясно, что неэффективно обращаться ко всем объектам таким способом после каждого и всякого изменения базы данных. Следовательно метод 'зависимости' (dependency) применим тогда, когда может быть использовано индицирование подчиненных объектов, которые подключаются после изменения объекта.

Показано, что объектная технология приносит реальные выгоды в ряде ключевых областей, наиболее значимых в развитии больших GIS приложений:

· Очень большие непрерывные базы данных

· Длинные транзакции

· Версионность как экономичное средство управления изменениями

· Топология

· Целостность базы данных

· Выполнение процедур основанных на правилах

· Генерализация пространственных данных и свободно масштабируемые базы данных

· Растрово-векторная интеграция

· Мультимедиа

Но истинный потенциал объектной технологии лежит в выполнении задачи моделирования и последовательного анализа, более простого, более соответствующего способу обычного мышления людей. Задача моделирования или схема проекта должна рассматриваться на трех уровнях:

· Концептуальный: концептуальная схема состоит из ограничений, предписанных любому частному применению базы данных. Для GIS приложений эта схема часто содержит предписания, взятые из реального мира.

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

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

Преимущества объектно-ориентированного подхода в том, что промежуток между концептуальным и логическим уровнями очень уменьшен и что физический уровень полностью скрыт от пользователя.

Объектно-ориентированный подход может быть принят на ряде различных уровней, которые в последовательности могут полезно различаться:

· Использование объектно-ориентированного языка программирования для доводки системы и внедрения

· Использование объектно-ориентированного языка на уровне программирования интерфейса приложений (Application Programming Interface (API)), что заменяет обычный 'макро' язык

· Использование решения объектно-ориентированной базы данных с функциональными возможностями GIS

А это просто про модели без ГИС

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

Один из наиболее известных теоретиков в области моделей данных Беери предлагает в общих чертах формальную основу ООБД, далеко не полную и не являющуюся моделью данных в традиционном смысле, но позволяющую исследователям и разработчикам систем ООБД по крайней мере говорить на одном языке (если, конечно, предложения Беери будут развиты и получат поддержку). Независимо от дальнейшей судьбы этих предложений мы считаем полезным кратко их пересказать.

Во-первых, следуя практике многих ООБД, предлагается выделить два уровня моделирования объектов: нижний (структурный) и верхний (поведенческий). На структурном уровне поддерживаются сложные объекты, их идентификация и разновидности связи "isa". База данных - это набор элементов данных, связанных отношениями "входит в класс" или "является атрибутом". Таким образом, БД может рассматриваться как ориентированный граф. Важным моментом является поддержание наряду с понятием объекта понятия значения (позже мы увидим, как много на этом построено в одной из успешных объектно-ориентированных СУБД O2).

Важным аспектом является четкое разделение схемы БД и самой БД. В качестве первичных концепций схемного уровня ООБД выступают типы и классы. Отмечается, что во всех системах, использующих только одно понятие (либо тип, либо класс), это понятие неизбежно перегружено: тип предполагает наличие некоторого множества значений, определяемого структурой данных этого типа; класс также предполагает наличие множества объектов, но это множество определяется пользователем. Таким образом, типы и классы играют разную роль, и для строгости и недвусмысленности требуется одновременная поддержка обоих понятий.

Беери не представляет полной формальной модели структурного уровня ООБД, но выражает уверенность, что текущего уровня понимания достаточно, чтобы формализовать такую модель. Что же касается поведенческого уровня, предложен только общий подход к требуемому для этого логическому аппарату (логики первого уровня недостаточно).

Важным, хотя и недостаточно обоснованным предположением Беери является то, что двух традиционных уровней - схемы и данных - для ООБД недостаточно. Для точного определения ООБД требуется уровень мета-схемы, содержимое которой должно определять виды объектов и связей, допустимых на схемном уровне БД. Мета-схема должна играть для ООБД такую же роль, какую играет структурная часть реляционной модели данных для схем реляционных баз данных.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-07-22 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: