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

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

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

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

Поэтому, например, точки ВЕ61К Р01КТ и ЕКВ Р01КТ будут физически реализованы в терминах их пекартовых координат. 3. Определение каждого атрибута автоматически приводит к определению одного оператора считывания — наблюдателя (проще говоря, оператора "яеГ"— "получить") и одного оператора изменения — мутатора (проще говоря, оператора з На самом деле второй нример неверный, носкольну ВЕЯЕНи ЕК — злю зарезервированные слава. 1045 Приложение Б. Обзор языка БДЛЗ "зе1" — "установить"), для которых используется синтаксис уточнения с помощью точкил. Пусть, например, Х, Р и ЕЯ вЂ” БОЬ-переменные типов РБОАТ, Р01МТ и ЫМЕЯЕЯ соответственно. Тогда допустимы следующие выражения. /в Получить значение компонента Х точки Р */ Р.Х /* Получить значение компонента Х з/ /* точки ВЕ61М сегмента линии БЯ */ ЬЯ.ВЕ61М.Х /* Установить значение Х для */ /+ компонента Х точки Р */ ЯЕТ Р.Х = Х ) ЯЕТ ЕБ.ВЕ61М.Х = 2 ; /* Установить значение Х для */ /* компонента Х точки ВЕ01М */ /* сегмента линии БЯ */ 4.

Поскольку какие-либо дополнительные операторы не были определены, из других операторов для этих типов допустимы лишь операторы сравнения на равенство и операторы присвоения, которые допустимы для всякого типа. В частности, отметим, что "операторы-селекторы" типов Р01МТ и ЫМЕЯЕЯ (в смысле главы 5) не определяются автоматически, поэтому нет и литералов типов Р01МТ и ЫМЕБЕЯ.

5. Уточнение Р1МА1 означает, что любая попытка определить другой тип как собственный подтип любого из этих типов приведет к ошибке (см. раздел Б.З), Иначе говоря, оба эти типа — листовые и будут такими оставаться всегда. б. Являются ли типы Р01МТ и ЫМЕЯЕЯ (или структурированные типы вообще) "инкапсулированными"? К сожалению, ответ на этот вопрос зависит от контекста. Например, если структурированный тип используется как тип некоторого столбца, ответ будет "Да" (пожалуй). Однако, если он используется как тип некоторой таблицы (см.

раздел Б.4), конечно, ответ будет УНет ". Замечание. В первом случае добавление "пожалуй" означает, что даже в этой ситуации операторы "получить" ("Бег") и "установить" ("зе1"), по существу, щзедоставляют атрибуты данного типа (как уже указывалось) и не могут быть замещены. Возможно, для первого случая уместно использовать термин "псевдоинкапсулированные типы" или псевдоскаляры. Приведем общий синтаксис для определения структурированного типа, который не является каким-либо подтипом (см.

раздел Б.З, где рассматривается случай определения подтипов). ОЕЕАТЕ ТУРЕ <имя типа> АБ [ <слисок определений атрибутов> ) [ <реализация ссялочвого типа> ] МОТ ] 1МЯТАМТ1АВ1 Е ) [ МОТ ] Р1МАЕ [ <список спецификаций методов> ] ) 1046 Приложения Следует отметить, что этот "мутатор" не является настоящим мутатором в смысле .лавы 5, т.е. типичным оператором обновления, поскольку по определению он возвращает значение.

Обсуждение последствий (неприятных/ этого факта, к сожалению, выходит за рамки данного короткого приложения. (Слс /З.З/, где этот вопрос обсуждается подробно) Пояснения 1. Параметр <слнсок определений атрибутов> не должен быть пустым.

2. Необязательный параметр <реаллзацня ссилочлото типа> подробно обсуждается в разделе Б.4. 3. Уточнение КОТ 1КЯТАКТ1АВЬЕ означает, что тип является фиктивным типом в смысле главы 19. По умолчанию заданным считается уточнение 1КЯТАИТ1АВЬЕ. 4. Уточнение КОТ Г1КАЬ означает, что тип может иметь собственные подтипы; в противном случае используется уточнение Р1КАЬ. 5. К значениям и переменным данного структурированного типа Т применяются следующие операторы.

а) Наблюдатели и мутаторы атрибутов, уже описанные выше. б) Операторы присвоения "=" и, возможно, сравнения "<" (оба оператора определяются с помощью отдельного оператора СКЕАТЕ ОКРЕК1КЯ РОК Т, хотя зачем требуется упорядочение, если нужно просто определить оператор присвоения "=", не совсем понятно). в) Процедуры и функции, которые определяются, чтобы получить параметр типа Т (или любой из его собственных подтипов; см. раздел Б,З). г) гьзетоды, которые определяются, чтобы получить специальный "целевой" параметр типа Т или любой из его собственных подтипов (опять же, см, раздел Б.З). Замечание.

Здесь под методами подразумеваются методы в традиционном объектном смысле (см, главу 24), т.е. они являются операторами, которые рассматривают один параметр как специальный. Если метод М определен для типа Т и Х вЂ” выражение типа Т, то специальный синтаксис точечного уточнения Х.М используется для вызова метода М для объекта Х. (Здесь для простоты подразумевается, что метод М никаких других параметров не имеет.) В параметре <слецлфлкацня иетоца> задаются "определения сигнатур" метода в смысле глав 19 и 24. Однако они также включают многое другое, что относится к реализации и, по мнению автора, здесь неуместно. реальный код, реализующий методы, определяется в другом месте. Б.З. Наследование типов В языке ЯОЬЗ поддержка наследования типов не полностью ортогональна, поскольку применяется только к структурированным типам, т.е.

не поддерживается наследование типов для типов встроенных, генерируемыхз и типов Р1ЯТ1КСТ. Кроме того, совсем не поддерживается множественное наследование типов. В атом разделе будет рассмотрено только наследование для "псевдоскалярных" структурированных типов, которое может считаться реализованным более или менее удовлетворительно. Обсуждение наследования неинкансулированных структурированных типов откладывается до раздела Б.5. З За исключением, мелеет быть, строчных тинов. Однако существуют некоторые нроблемы, связанные с наследованием строчных типов, которые здесь не освещаются, носкольку зто выходит за рамки данного нрилозкения. 1047 Приложение Б. Обзор языка БЬ)БЗ Перечислим самые сушественные различия между моделью наследования типов, которая была представлена в главе 19, и наследованием "псевдоскалярных'* типов в языке БОЬЗ.

° В языке БС(ЬЗ поддерживаются структурное наследование, а также наследование поведения. ° В языке Я()ЬЗ неверно различаются значения и переменные, и поэтому, в частности, не различаются заменимость значений и заменимость переменных. ° В языке ЯОЬЗ нет поддержки ограничений типа, и поэтому также нет поддержки специализации посредством ограничения. ° В языке БС(ЬЗ требуется, чтобы операторы обновления ("мутаторы") наследовались безусловно.

Вследствие этих различий в языке ЯОЬЗ допускаются '"некруглые окружности" и другие несуразности, которые обсуждались в главе 19. Кроме того, некоторые операции сравнения в языке ЯО: 3 в результате дают значение ложь, когда они должны бы давать значение истина (поскольку, например, значение менее конкретного типа ЕЬЫРЯЕ может иметь равные полуоси и, значит, соответствовать окружности в обычном понимании).

Ниже приводятся примеры описания типов эллипсов и окружностей на языке Я()ЬЗ. СКЕАТЕ ТТРН ЕЬЫРЯЕ АЯ ( й ЬЕНОТН, В ЬЕНОТН, СТК Р01НТ ) НОТ Р1йй1 СКЕАТЕ ТТРЕ СЬКСЬЕ НЕНЕК ЕЬЫРБЕ АЯ ( К ЬЕНОТН ) — нереалистично! (см. нние) НОТ Р1МАЬ Однако отметим, что в этих определениях физической реализации типа С1КСЬЕ используются четыре компонента — й, В и СТК (наследуемые от типа ЕЬЫРЯЕ) и К (указываемый только для типа С1КСЬЕ). Для любой данной окружности, конечно, три из этих компонентов будут иметь одинаковые значения.

В качестве альтернативы вместо атрибута К можно определить метод К для типа С1КСЬЕ. Тогда тип С1КСЬЕ будет иметь ту же физическую реализашпо, что и тип ЕЬЫРЯЕ, и эта реализация будет менее избыточна. С другой стороны, если С вЂ” переменная объявленного типа С1КСЬЕ, присвоение С.К будет допустимо в первом из этих проектов, но не допустимо во втором. И опять же, присвоение С.К, если оно поддерживается, будет„вообще говоря, давать такую "окружность", что С К Ф С.А( Ниже перечислены некоторые особенности в различии между моделью наследования типов, описанной в главе 19, и наследованием, которое поддерживается в языке Я( 1ЬЗ. ° В языке БОЬЗ используется термин "гйгесз" в понятии аугесг зибгуре для обозначения прямого непосредственного подтипа вместо более соответствуюшего случаю термина "(пцпед(а1е".

° В языке Я1 1ЬЗ вместо термина "корневой тип" используется термин "максимальный супертип". ° В языке ЯО 3 поддерживается оператор ТКЕАТ (аналог оператора ТКЕАТ 00НМ). Например, в этом языке аналогом выражения ТКЕйТ НОНН йЯ С1КСЬЕ(Е) будет выражение ТКЕйТ Е АБ С1КСЬЕ. 1048 Приложения ° В языке Б()ЬЗ также имеется оператор, который можно рассматривать как оператор ТЕЕАТ ОР. Приведем, например, следующую формулировку оператора. АИДА ( С АЯ ЕЬЬ|РБЕ ) Уточнение АБ ЕЬЬУРЯЕ обеспечивает вызов версии ЕЬИРБЕ лля оператора АЕЕА, даже если объявленный тип переменной С будет С1ЕСЬЕ.

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

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

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

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