Тема_7 (1122352), страница 7

Файл №1122352 Тема_7 (Презентации лекций С.Д. Кузнецова PDF) 7 страницаТема_7 (1122352) страница 72019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Кузнецов. Базы данных.83 Проектирование РБДДиаграммы классов языка UML (5)Основные понятия диаграмм классов UML (3) Классы, атрибуты, операции(1) Классом называется именованноеописание совокупности объектов собщими атрибутами, операциями,связями и семантикой Графически класс изображается в виде прямоугольника У каждого класса должно быть имя (текстовая строка), уникальноотличающее его от всех других классов При формировании имен классов в UML допускается использованиепроизвольной комбинации букв, цифр и даже знаков препинания Однако на практике рекомендуется использовать в качестве именклассов короткие и осмысленные прилагательные и существительные,каждое из которых начинается с заглавной буквы Примеры описания классов показаны на рисунке29.10.2009С.Д.

Кузнецов. Базы данных.84 Проектирование РБДДиаграммы классов языка UML (6)Основные понятия диаграмм классов UML (4) Классы, атрибуты, операции(2) Атрибутом класса называется именованноесвойство класса, описывающее множество значений,которые могут принимать экземпляры этого свойства Класс может иметь любое число атрибутов (вчастности, не иметь ни одного атрибута) Свойство, выражаемое атрибутом, является свойством моделируемойсущности, общим для всех объектов данного класса Так что атрибут является абстракцией состояния объекта Имена атрибутов представляются в разделе класса, расположенномпод именем класса На практике для имен атрибутов рекомендуется использовать короткиеприлагательные и существительные, отражающие смыслсоответствующего свойства класса Первое слово в имени атрибута рекомендуется писать с прописнойбуквы, а все остальные слова – с заглавной Пример описания класса с указанными атрибутами показан на рисунке29.10.2009С.Д.

Кузнецов. Базы данных.85 Проектирование РБДДиаграммы классов языка UML (7)Основные понятия диаграмм классов UML (5) Классы, атрибуты, операции(3)Операцией класса называется именованная услуга, которую можнозапросить у любого объекта этого классаОперация – это абстракция того, что можно делать с объектомКласс может содержать любое число операций (в частности, не содержатьни одной операции)Набор операций класса является общим для всех объектов данногокласса.Операции класса определяются в разделе, расположенном ниже раздела сатрибутамиМожно ограничиться только указанием имен операций, оставив детальнуюспецификацию выполнения операций на более поздние этапымоделированияДля именования операций рекомендуется использовать глагольныеформы, соответствующие ожидаемому поведению объектов данногоклассаОписание операции может также содержать ее сигнатуру, т. е.

имена итипы всех параметров, а если операция является функцией, то и тип еезначения29.10.2009С.Д. Кузнецов. Базы данных.86 Проектирование РБДДиаграммы классов языка UML (8)Основные понятия диаграмм классов UML (6) Классы, атрибуты, операции(4) Для класса Человек определены триоперации: выдатьВозраст, сохранитьТекущийДоход, выдатьОбщийДоход В операции выдатьВозраст используютсязначение атрибута датаРождения и значениетекущей даты Операция сохранитьТекущийДоход позволяет зафиксировать всостоянии объекта сумму и дату поступления дохода данного человека Операция выдатьОбщийДоход выдает суммарный доход данногочеловека за указанное время Заметим, что состояние объекта меняется при выполнении тольковторой операции Результаты первой и третьей операций формируются на основетекущего состояния объекта29.10.2009С.Д.

Кузнецов. Базы данных.87 Проектирование РБДДиаграммы классов языка UML (9)Основные понятия диаграмм классов UML (7) Категории связей. Связь-зависимость(1)В диаграмме классов могут участвовать связи трех разныхкатегорий:зависимость (dependency),обобщение (generalization) иассоциация (association)При проектировании реляционных БД наиболее важны вторая итретья категории связей, поэтому о связях-зависимостях будетсказано только самое основное.Зависимостью называют связь по применению, когда изменение вспецификации одного класса может повлиять на поведение другогокласса, использующего первый классЧаще всего зависимости применяют в диаграммах классов, чтобыотразить в сигнатуре операции одного класса тот факт, чтопараметром этой операции могут быть объекты другого классаПонятно, что если интерфейс второго класса изменяется, этовлияет на поведение объектов первого класса29.10.2009С.Д.

Кузнецов. Базы данных.88 Проектирование РБДДиаграммы классов языка UML(10)Основные понятия диаграмм классов UML (8) Категории связей. Связь-зависимость Пример диаграммы классов со(2)связью-зависимостью В классе РасписаниеЗанятийопределены две операции сочевидной семантикой, параметрамикоторых являются объекты классаКурс При изменении интерфейса класса Курс изменится поведение объектовкласса РасписаниеЗанятий. Зависимость показывается прерывистой линией со стрелкой,направленной к классу, от которого имеется зависимость Связи-зависимости существенны для объектно-ориентированныхсистем (в том числе и для ООБД) При проектировании традиционных РБД непонятно, как использоватьинформацию о наличии связей-зависимостей между классами29.10.2009С.Д.

Кузнецов. Базы данных.89 Проектирование РБДДиаграммы классов языка UML(10)Связью-обобщениемназываетсясвязь(8)междуобщей сущностью,Основныепонятия диаграммклассов UMLСвязь-обобщение(1)называемой суперклассом, или родителем, и болееспециализированной разновидностью этой сущности, называемойподклассом, или потомкомОбобщения иногда называют связями «is a», имея в виду, чтокласс-потомок является частным случаем класса-предкаКласс-потомок наследует все атрибуты и операции класса-предка,но в нем могут быть определены дополнительные атрибуты иоперации.Объекты класса-потомка могут использоваться везде, где могутиспользоваться объекты класса-предкаЭто свойство называют полиморфизмом по включению, имея ввиду, что объекты потомка можно считать включаемыми вомножество объектов класса-предкаГрафически обобщения изображаются в виде сплошной линии сбольшой незакрашенной стрелкой, направленной к суперклассу29.10.2009С.Д.

Кузнецов. Базы данных.90 Проектирование РБДДиаграммы классов языка UML(11) Здесь показан примерОсновные понятия диаграмм классов UML (9) Связь-обобщение (2)иерархии одиночногонаследования: у каждогоподкласса имеется только одинсуперкласс. В отличие от механизманаследования типов сущностейER-модели здесь отсутствуеткласс ПРОЧИЕ, т.е. в классеЛетательныйАппарат могутприсутствовать «собственные»объекты, не относящиеся ни кклассу Аэроплан, ни к классуВертолет Одиночное наследование является достаточным в большинствеслучаев применения связи-обобщения29.10.2009С.Д.

Кузнецов. Базы данных.91 Проектирование РБДДиаграммы классов языка UML(12) Однако в UML допускается иОсновные понятия диаграмм классов UML (10) Связь-обобщение (3)множественное наследование, когдаодин подкласс определяется наоснове нескольких суперклассов В качестве одного из разумных (неслишком распространенных)примеров рассмотрим даннуюдиаграмму классов На этой диаграмме классы Студенти Преподаватель порождены изодного суперклассаЧеловекИзУниверситета Вообще говоря, к классу Студент относятся те объекты классаЧеловекИзУниверситета, которые соответствуют студентам, а к классуПреподаватель – объекты класса ЧеловекИзУниверситета,соответствующие преподавателям29.10.2009С.Д. Кузнецов.

Базы данных.92 Проектирование РБДДиаграммы классов языка UML(13) Но, как это часто случается,Основные понятия диаграмм классов UML (11) Связь-обобщение (4)многие студенты уже в студенческиегоды начинают преподавать, так чтомогут существовать такие дваобъекта классов Студент иПреподаватель, которымсоответствует один объект классаЧеловекИзУниверситета Итак, среди объектов классаСтудент могут быть преподаватели, анекоторые преподаватели могут бытьстудентами Тогда мы можем определить класс СтудентПреподаватель путеммножественного наследования от суперклассов Студент и Преподаватель29.10.2009С.Д.

Кузнецов. Базы данных.93 Проектирование РБДДиаграммы классов языка UML(14) Так что полиморфизм поОсновные понятия диаграмм классов UML (12) Связь-обобщение (5)включению продолжает работать Заметим, что для этого пришлосьотказаться от еще одного свойствамеханизма наследования ER-модели– отсутствие общих экземпляров уподтипов одного типа сущности В данном случае множественноенаследование возможно именнопотому, что в классы Студент иПреподаватель входят разныеобъекты, которым соответствуетодин и тот же объект суперкласса29.10.2009С.Д. Кузнецов.

Базы данных.94 Проектирование РБДДиаграммы классов языка UML(15)Следуеттакже отметить,что множественноенаследование,Основныепонятиядиаграмм классовUML (13) Связь-обобщение(6)помимо того, что не слишком часто требуется на практике,порождает ряд проблем, из которых одной из наиболее известныхявляется проблема именования атрибутов и операций в подклассе,полученном путем множественного наследованияНапример, предположим, что при образовании подклассов Студенти Преподаватель в них обоих был определен атрибут с именемномерКомнатыОчень вероятно, что для объектов класса Студент значениямиэтого атрибута будут номера комнат в студенческом общежитии, адля объектов класса Преподаватель – номера служебныхкабинетовКак быть с объектами класса СтудентПреподаватель, для которыхсущественны оба одноименных атрибута (у студентапреподавателя могут иметься и комната в общежитии, и служебныйкабинет)?29.10.2009С.Д.

Кузнецов. Базы данных.95 Проектирование РБДДиаграммы классов языка UML(16)Основныепонятия диаграммклассов UML(14) изСвязь-обобщение(7)На практикеприменяетсяодноследующихрешений:запретить образование подклассаСтудентПреподаватель, пока в одном из суперклассовне будет произведено переименование атрибутаномерКомнаты;наследовать это свойство только от одного изсуперклассов, так что, например, значением атрибутаномерКомнаты у объектов классаСтудентПреподаватель всегда будут номера служебныхкабинетов;унаследовать в подклассе оба свойства, ноавтоматически переименовать оба атрибута, чтобыпрояснить их смысл; назвать их, например,номерКомнатыСтудента и номерКомнатыПреподавателя29.10.2009С.Д.

Кузнецов. Базы данных.96 Проектирование РБДДиаграммы классов языка UML(17)Ни одноиз решенийне являетсяполностьюОсновныепонятиядиаграммклассов UML(15) Связь-обобщение (8)удовлетворительнымПервое решение требует возврата к ранее определенному классу,имена атрибутов и операций которого, возможно, уже используются вприложенияхВторое решение нарушает логику наследования, не давая возможностина уровне подкласса использовать все свойства суперклассовНаконец, третье решение заставляет использовать длинные именаатрибутов и операций, которые могут стать недопустимо длинными,если процесс множественного наследования будет продолжаться отполученного подклассаНо, конечно, сложность проблемы именования атрибутов иопераций несопоставимо меньше сложности реализациимножественного наследования в реляционных БДПоэтому при использовании UML для проектированияреляционных БД нужно очень осторожно использоватьнаследование классов вообще и стараться избегатьмножественного наследования29.10.2009С.Д.

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

Тип файла
PDF-файл
Размер
625,64 Kb
Тип материала
Предмет
Высшее учебное заведение

Список файлов лекций

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