Главная » Просмотр файлов » Введение в системы БД

Введение в системы БД (542480), страница 252

Файл №542480 Введение в системы БД (Введение в системы БД) 252 страницаВведение в системы БД (542480) страница 2522015-08-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 252)

Г Как уже подчеркивалось в разделе 24.2. в некоторых системач используются оба понятия — и "тип", и "класс". В этих систечох "псин" означаепс тип, т.е, содержание или сущность поняптя, а "класс" означает применение эпсого понятия, т.е. определенную коллекцию, или иногда реализацию данного типа.

В других системах данные терлсины используются иначе .. Лзы же по-прежнему будем употреолять термин "класс" для обозначения типа в том смысле, что и в главе 5. 958 Часть |~1. Обьектные и объектно-реляционньсе баэьс данных Поскольку одни объекты могут ссылаться на любые другие объекты с помошью идентификаторов, один объект может совместно использоваться несколькими другими объектами. В частности, один и тот же объект может одновременно относиться к нескольким различным коллекциям объектов. В продолжение рассматриваемого примера приведем еше одно выражение. СЬАЯЯ ЕМР СОЬЬ РОНЬТС ( ЕМРБ КЕР ( ЯЕТ ( КЕР ( ЕМР ) ) ) ) АЬЬ ЕМРЯ := ЕМР СОЬЬ НЕЮ ( ) АЬЬ ЕМРЯ АОО ( Е ) Пояснения ° Объект класса ЕМР СОЬЬ содержит одну открытую переменную экземпляра ЕМРБ, значением которой является указатель (ндентификатор) на изменяемый объект, значение которого представляет собой набор указателей на отдельные объекты класса ЕМР.

° А1Ь ЕМРЯ вЂ” это программная переменная, значением которой является идентификатор объекта класса ЕМР СОЬЬ. После выполнения операции присвоения она булет содержать идентификатор объекта, значением которого, в свою очередь, будет идентификатор нусшого множества идентификаторов объектов ЕМР.

° АНН вЂ” это метод объектов класса ЕМР СОЬЬ. В рассматриваемом примере данный метод применяется для объекта класса, идентификатор которого содержится в программной переменной АЬЬ ЕМРЯ, и предназначается для добавления идентификатора объекта ЕМР, который содержится в программной переменной Е, к набору идентификаторов (изначально пустому).

Причем идентификатор этого набора содержится в объекте ЕМР СОЬЬ, идентификатор которого находится в программной переменной А1Ь ЕМРБ. Рассмотрев приведенную выше последовательность операций, можно заметить, что переменная АЬЬ ЕМРЯ связана с набором объектов ЕМР, который в текуший момент содержит только один объект, а именно — объект, описывающий сотрудника с номером 'Е001'. (Помимо всего прочего, обратите внимание на то, что необходимо упомянуть значение ключа пользователя в последнем прелложении!) Конечно, в некоторый заданный момент может существовать любое количество разных и, возможно, перекрываюшихся "наборов сотрудников", например следуюших.

РКООКАММЕКЯ := ЕМР СОЬЬ НЕМ ( ) РКО6КАММЕКБ АОО ( Е ) Н16НЬУ РА10 := ЕМР СОЬХ НЕМ ( ) Н16НЬТ РА10 АОО ( Е ) Приведенный ниже пример Б(гЬ-выражения показывает, что в реляционных системах все может быть организовано совсем иначе.

СКЕЙТЕ ТАВЬЕ ЕМР ( ЕМРЯ Глава 24. Объектные базы данных КВАМЕ ЯАЬАКТ РОЯ1ТХОН ... ) В этом случае тип м коллекция создаются одновременно, причем сложный тип соответствует заголовку таблицы, а исходно пустая коллекция соответствует содержанию таблицы. Точно так же приведенное ниже БОЬ-выражение позволяет одновременно создать отдельную строку ЕМР и добавить ее к коллекции ЕМР. 1МЯЕВТ 1НТО ЕМР ( ... ) ЧАЬОЕЯ ( ... ) 7 Можно сделать вывод, что организация этих действий с помощью языка БОЬ характеризуется следующими особенностями. 1. Отдельный "объект" класса ЕМР не может существовать, не являясь частью некоторой "коллекции", фактически — какой-то единственной "коллекции" (подробности приведены ниже).

2. Не существует непосредственного способа создания двух различных "коллекций" объектов одного н того же "класса" ЕМР (подробности приведены ниже). 3. Не существует непосредственного способа совместного использования одного и того же "объекта" в нескольких "коллекциях" "объектов" ЕМР (подробности приведены ниже).

Именно такие претензии иногда можно услышать, однако они не выдерживают серьезной критики. Во-первых, для достижения равноценного эффекта в каждом случае может применяться релиционный метод использования внешнего ключа. Например, можно определить две базовые таблицы, РКООКАММЕКБ (программисты) и Н16НЬУ РА10 (высокооплачиваемые), каждая из которых состоит из номеров соответствующих сотрудников.

Во-вторых, что еше важнее, для достижения того же эффекта может быть применен реляционный метод с использованием представлений. Например, таблицы РВООВАММЕВЯ и Н16НЬТ РА10 можно определить как представлении, созданные на основе базовой таблицы ЕМР. СКЕАТЕ Ч1ЕН РВО6КАММЕКЯ АБ ЯЕЬЕСТ ЕМР)), КВАМЕ, БАЬАКУ, РОЯ1Т1ОН РВОМ ЕМР ННЕВЕ РОЯ1Т1ОН = 'Ргопгапаег' СКЕАТЕ Ч1ЕН Н16НЬТ РА10 АЯ ЯЕЬЕСТ ЕМР)), ЕНАМЕ, ЯА1,АРУ, РОБ1ТТОМ РВОМ ЕМР НЕВКЕ ЯАЬАКУ > <некоторое значение, например 75 000> Теперь один н тот же "объект" сотрудника можно одновременно разместить в двух или более "коллекциях". Кроме того, участие в коллекциях, которые являются представлениями, управляется системой автоматически, а не программистом вручную. Завершая эту тему, следует упомянуть об одной интересной параллели, существующей между изменяемыми объектами объектных систем и явно заданными динамическими переменными некоторых языков программирования (например, базовыми переменными языка Р1Л).

Как и в случае изменяемых объектов данного класса, может суше- 960 Часть У1. Объектные и объектнореляционные базы данньп ствовать любое количество отдельных явных динамических переменных данного типа, память для которых выделяется во время выполнения явно заданными указаниями программиста. Более того, эти отдельные переменные, как и отдельные изменяемые объекты, не имеют инея, а потому на них можно ссылаться только с помошью указателей.

Например, в языке РЕ/1 можно записать такую последовательность выражений. /' ХХХ - базовая переменная */ /* Р— указатель »/ /» создание нового экземпляра ХТХ, »/ /» иа которнй указмвает Р */ /» присвоение значения 3 экземпляру */ /' ХХХ, на которнй указмвает Р '/ ОСЬ ХУХ 1КТЕОЕЕ ВАБЕО ОСЕ Р РО1МТЕЕ ; АЬЬОСАТЕ ХУХ БЕТ ( Р ); Р -> ХТЕ = 3 Этот записанный на языке РЕ/1 код очень похож на рассмотренный ранее объектный код. В частности, объявление базовой переменной подобно объявлению класса объектов, а операция А? ЕОСАТŠ— созданию нового экземпляра объекта этого класса. Таким образом, основная причина, по которой в объектной модели необходимы идентификаторы, заключается в том, что те объекты, которые они идентифицируют, не обладают уникальными именами (точно так же, как базовые переменные в языке РЕ/1).

Иерархии классов 961 Глава 24. Объектные базы данных Описание концепций объектного подхода было бы неполным без рассмотрения иерархий классов (их не следует путать с иерархиями вложения). Однако объектная концепция "иерархии классов", в сушности, является тем же, что и концепция иерархии типов, рассмотренная в главе 19. Следовательно, здесь можно ограничиться несколькими краткими определениями (большей частью это перефразированные выражения из главы 19) и соответствуюшими примерами. Замечание.

Напомним, что в объектном мире, как и в остальных случаях, все еше нет полной согласованности относительно концепции абстрактной .модели наследования, поэтому различные системы наследования существенно отличаются одна от другой на уровне деталей. Начнем с того, что объектный класс У является подклассом класса Х, а объектный класс Х вЂ” суперклассом объектного класса 1 тогда и только тогда, когда каждый объект класса 1 обязательно является и объектом класса Х(т.е.

"1 1БА Х"). В этом случае объект класса 1 наследует переменные экземпляра и методы класса Х. Наследование переменных экземпляра обычно называют наследованием структуры, а наследование методов — наследованием поведения. В истинно объектных системах не может быть наследования структуры, а возможно лишь наследование поведения (по крайней мере для скаляров и инкапсулированных объектов), поскольку нет структуры для наследования (т.е. пользователю никакая структура не видна).

Однако на практике объектные системы обычно несовершенны и в какой-то мере поддерживают структурное наследование, которое, подчеркиваем, означает наследование открытых переменных экземпляра. Если класс Т является подклассом класса Х, то пользователю предоставляется возможность применять объект класса 1 вместо объекта класса Х везде, где это допустимо, т.е. в качестве аргумента различных методов. Этот принцип называется принципом подстановки и весьма полезен для повторного использования кода. Однако, посколь- ку в объектных системах не всегда четко прослеживается разница между значениями и переменными (т.е, между неизменяемыми и изменяемыми объектами), возникают проблемы различения значения и возможного замещения переменной (этот вопрос обсуждается в главе 19).

Характеристики

Тип файла
DJVU-файл
Размер
10,05 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее