Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Фундаментальные свойства отношений).pdf
Добавлен: 13.03.2024
Просмотров: 31
Скачиваний: 0
СОДЕРЖАНИЕ
ГЛАВА 1. БАЗЫ ДАННЫХ И СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ
1.1 В общем о базах данных и системах управления базами данных
1.2 Ранние подходы к организации БД
ГЛАВА 2. РЕЛЯЦИОННАЯ БАЗА ДАННЫХ
2.1 Общие понятия реляционного подхода к организации БД
2.2 Фундаментальные свойства отношений
ГЛАВА 3. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД ПРИ ПРОЕКТИРОВАНИИ ИНФОРМАЦИОННОЙ СИСТЕМЫ
Базы данных, которые стабильны, хорошо определены и легко описываются в виде двумерных таблиц, а также нуждаются в широкомасштабной поддержке, наилучшим образом строятся с использованием реляционной систем управления базами данных.
Относительно маленькие базы данных, которые в основном определяются описываемыми ими объектами и действиями, которые они могут выполнять, наверное, лучше реализовать, используя объектно-ориентированный подход.
А вот произойдет ли ожидаемый революционный переход к объектно-ориентированным базам данных путем наслаивания объектно-ориентированного подхода поверх реляционной модели, а может даже и на основе чисто объектно-ориентированной платформы, пока, к сожалению, не известно.
СПИСОК ЛИТЕРАТУРЫ
- Гради Буч; Роберт А. Максимчук; Майкл У. Энгл; Бобби Дж. Янг; Джим Коналлен. Объектно-ориентированный анализ и проектирование с примерами приложений (UML 2). 3-е издание. - : «Вильямс» 2008г, 720 стр.
- Иан Грэхем. Объектно-ориентированные методы. Принципы и практика (3-е издание). – М: «Вильямс» 2004г, 880 стр.
- Кириллов В. В.; Громов Г. Ю. Введение в реляционные базы данных. – М: «BHV» 2009г, 464 стр.
- Крёнке.Д. Теория и практика построения баз данных, 8-е изд. – М : «Питер» 2003г, 800 стр.
- Кузнецов С.Д. Базы данных. Модели и языки. –М: «Бином» 2008г, 720 стр.
- Галина Мирошниченко. Реляционные базы данных: практические приемы оптимальных решений. – М: «БХВ-Петербург» 2005г,- 400 с.
- Райордан Р. Основы реляционных баз данных. Пер, с англ. - М.: Издательско-торговый дом "Русская Редакция", 2001. - 384 с.
- Туманов.В.Е Основы проектирования реляционных баз данных. – М: «Бином.ЛБЗ» 2007г,-420 стр.
- Уидом Дж. Ульман Д. Основы реляционных баз данных. - М: «Лори».2006г, -374 стр.
- Харрингтон. Д. Проектирование объектно-ориентированных баз данных. - М: ДМК ПРЕСС, 2001г,- 272 стр.
- «Объектно-ориентированные базы данных - основные концепции, организация и управление: краткий обзор» Автор: Кузнецов Сергей http://www.citforum.ru/database/articles/art_24.shtml#lit
- «Объектно-ориентированные базы данных: среда разработки программ плюс хранилище объектов» Авторы: Андреев А.М.; Березкин Д.В.; Кантонистов Ю.А http://inteltec.ru/publish/articles/objtech/oodbms_o.shtml
- «Реляционные базы данных» Автор: Пит Лошин 04.02.2001г. http://www.osp.ru/cw/2001/05/9215/
- «Основы проектирования реляционных баз данных» Автор: Кириллов.В.В. http://cs.ifmo.ru/education/documentation/dbguide/index.shtml
- «Реляционная база данных и её связи между таблицами» http://shkola.lv/index.php?mode=cht&chtid=511
- «Базы данных. Вводный курс» Автор: Кузнецов Сергей. http://www.citforum.ru/database/advanced_intro/
Глоссарий:
Понятие (термин) |
определение |
источник |
централизованное хранилище данных, обеспечивающее хранение, доступ, первичную обработку и поиск информации. |
http://php-myadmin.ru/glossary/ |
|
Система управления базой данных (СУБД) |
СУБД обеспечивает поддержку создания баз данных, централизованного управления и организации доступа к ним различных пользователей. |
http://www.znannya.org/?view=PHP_SUBD_main |
Объектно-ориентированная БД |
база данных, в которой данные оформлены в виде моделей объектов, включающих прикладные программы, которые управляются внешними событиями. |
http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B1%D0%B0%D0%B7%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 |
Локальные СУБД |
это СУБД, работающие на одном компьютере. К таким относятся dBase, FoxPro, Microsoft Access, Paradox и т.д. |
http://www.alblog.tu2.ru/?p=436 |
Сетевые СУБД |
это СУБД, позволяющие нескольким компьютерам использовать одну и ту же БД с помощью технологии клиент-сервер. Примером таких СУБД являются InterBase, Oracle, Microsoft SQL Server и т.д. |
http://www.alblog.tu2.ru/?p=436 |
Схема БД (в структурном смысле) |
это набор именованных схем отношений. |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
Реляционная база данных |
база данных, основанная на реляционной модели данных |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
кортеж |
это набор именованных значений заданного типа. |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
язык базы данных |
специальный язык, предназначенный для работы с базами данных. |
http://www.citforum.ru/database/osbd/glava_23.shtml#_2_3_1_3 |
Индекс |
объект базы данных, создаваемый с целью повышения производительности выполнения запросов. |
http://php-myadmin.ru/glossary/ |
Поле |
строка в таблице с данными. Синоним термина реляционной базы данных "кортеж". |
http://php-myadmin.ru/glossary/ |
Ключ |
объект базы данных, создаваемый с целью повышения производительности выполнения запросов. |
http://php-myadmin.ru/glossary/ |
Словарь данных |
отведенное место в базе данных, которое используется для хранения информации о самой базе данных. Словарь данных может содержать информацию: об архитектуре базы данных, о хранимых процедурах, о пользовательских привилегиях, и др. |
http://php-myadmin.ru/glossary/ |
Столбец |
это часть данных определённого типа, единого для всех полей таблицы. Синоним термина реляционной базы данных "атрибут". |
http://php-myadmin.ru/glossary/ |
Строка |
строка в таблице с данными. Синоним термина реляционной базы данных "кортеж". |
http://php-myadmin.ru/glossary/ |
Таблица |
набор элементов данных организованных, определённых и сохранённых в виде горизонтальных строк и вертикальных столбцов, где каждый элемент может быть идентифицирован по его имени, ключу или позиции по отношению к другим элементам. |
http://php-myadmin.ru/glossary/ |
Сущность |
это реальный или представляемый объект, информация о котором должна сохраняться и быть доступной. |
http://www.intuit.ru/department/database/rdbintro/9/2.html |
Связь |
это графически изображаемая ассоциация, устанавливаемая между двумя типами сущностей. |
http://www.intuit.ru/department/database/rdbintro/9/2.html |
Атрибут сущности |
Атрибутом сущности является любая деталь, которая служит для уточнения, идентификации, классификации, числовой характеристики или выражения состояния сущности. |
http://www.intuit.ru/department/database/rdbintro/9/2.html |
свойство |
это однозначный факт о некоторой сущности, то есть данные о сущности, которые нужно сохранить |
http://works.tarefer.ru/69/100747/index.html |
Первая нормальная форма |
Говорят, что сущность находится в первой нормальной форме, когда все её атрибуты имеют единственное значение. |
http://works.tarefer.ru/69/100747/index.html |
Вторая нормальная форма |
Говорят, что сущность находится во второй нормальной форме, если она уже находится в первой нормальной форме, и каждый неидентифицирующий атрибут зависит от всего уникального идентификатора сущности. Если некий атрибут не зависит полностью от уникального идентификатора сущности, значит, он внесён ошибочно и должен быть удалён. |
http://works.tarefer.ru/69/100747/index.html |
Третья нормальная форма |
Третья нормальная форма требует, во-первых, соответствия второй (а та - первой). А во-вторых - чтобы значение любого поля, не входящего впервичный ключ не зависело от других полей, не входящих в первичный ключ. |
http://www.realcoding.net/articles/urok-3-nekotorye-pravila-postroeniya-baz-dannykh.html |
нормальная форма Бойса-Кодда |
Отношение R находится в нормальной форме Бойса-Кодда (BCNF) в том и только в том случае, если каждый детерминант является возможным ключом. |
http://www.citforum.ru/database/osbd/glava_23.shtml#_2_3_1_3 |
Рекурсивная связь |
Связь называется рекурсивной, когда каждая сущность, участвующая в связи, описывает другую и описывается ею. |
http://works.tarefer.ru/69/100747/index.html |
Степень |
показывает, сколько экземпляров описываемой сущности должны описывать один экземпляр описываемой сущности. Степень выражается с помощью разных значений взаимосвязей |
http://works.tarefer.ru/69/100747/index.html |
Отношение |
это множество кортежей, соответствующих одной схеме отношения. |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
Ссылочная целостность |
это ограничение базы данных, гарантирующее, что ссылки между данными являются действительно правомерными и неповрежденными. |
http://www.cyberguru.ru/database/database-theory/reference-integrity.html |
Домен |
В самом общем виде домен определяется заданием некоторого базового типа данных, к которому относятся элементы домена, и произвольного логического выражения, применяемого к элементу типа данных. |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
элемент домена |
Если вычисление произвольного логического выражения, применяемого к элементу типа данных дает результат "истина", то элемент данных является элементом домена. |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
Схема отношения |
это именованное множество пар {имя атрибута, имя домена (или типа, если понятие домена не поддерживается)}. |
http://lib.profi.net.ua/doc/databases/osbd/glava_16.htm |
Первичный ключ |
минимальный набор полей, уникально идентифицирующий запись в таблице. |
http://www.znannya.org/?view=PHP_SUBD_main |
Альтернативные ключи |
После выбора первичного ключа из набора потенциальных ключей, оставшиеся ключи называются альтенативными. |
http://www.realcoding.net/articles/urok-3-nekotorye-pravila-postroeniya-baz-dannykh.html |
файл |
это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные. |
http://www.citforum.ru/database/osbd/glava_6.shtml |
Транзакция |
это последовательность операций над БД, рассматриваемых СУБД как единое целое. |
http://www.citforum.ru/database/osbd/glava_6.shtml |
Журнал |
это особая часть БД, недоступная пользователям СУБД и поддерживаемая с особой тщательностью, в которую поступают записи обо всех изменениях основной части БД. |
http://www.citforum.ru/database/osbd/glava_23.shtml#_2_3_1_3 |
кардинальное число |
показывает, сколько экземпляров описываемой сущности должны описывать один экземпляр описываемой сущности. |
http://works.tarefer.ru/69/100747/index.html |
объектная модель |
модель, в которой данные представляются в виде набора объектов и классов, связанных между собой родственными отношениями, а работа с объектами осуществляется с помощью скрытых в них методов. |
http://www.znannya.org/?view=PHP_SUBD_main |
взаимосвязь "один" к "одному" |
Вид взаимосвязи один к одному означает, что каждая запись одного объекта БД будет указывать на единственную запись другого объекта. |
http://www.alblog.tu2.ru/?p=436 |
взаимосвязь "один" ко "многим" |
Один ко многим означает, что одной записи объекта БД будет соответствовать несколько записей других объектов. |
http://www.alblog.tu2.ru/?p=436 |
взаимосвязь "много" к "одному" |
Много к одному означает, что нескольким записям объектов БД будет соответствовать одна запись другого объекта. |
http://www.alblog.tu2.ru/?p=436 |
взаимосвязь "много" ко "многим" |
Много ко многим устанавливается между двумя типами объектов БД. |
http://www.alblog.tu2.ru/?p=436 |
сериализация |
Под сериализаций параллельно выполняющихся транзакций понимается такой порядок планирования их работы, при котором суммарный эффект смеси транзакций эквивалентен эффекту их некоторого последовательного выполнения. |
http://www.citforum.ru/database/osbd/glava_6.shtml |
Сериальный план |
это такой план, который приводит к сериализации транзакций. |
http://www.citforum.ru/database/osbd/glava_6.shtml |
SQL (Structured Query Language) |
Стандартный язык наиболее распространенных в настоящее время реляционных СУБД |
http://www.citforum.ru/database/osbd/glava_23.shtml#_2_3_1_3 |
Детерминант |
любой атрибут, от которого полностью функционально зависит некоторый другой атрибут. |
http://www.citforum.ru/database/osbd/glava_23.shtml#_2_3_1_3 |
Метод |
программный код, привязанный к конкретному классу и применимый к объектам этого класса. |
http://www.citforum.ru/database/osbd/glava_112.shtml |
Публичный метод |
метод доступными из объектов других классов |
http://www.citforum.ru/database/osbd/glava_112.shtml |
класс |
это тип, описывающий устройство объектов. Понятие «класс» подразумевает некоторое поведение и способ представления. |
http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5 |
Приватный метод |
доступными только внутри данного класса |
http://www.citforum.ru/database/osbd/glava_112.shtml |
наследование |
позволяет описать новый класс на основе уже существующего (родительского), при этом свойства и функциональность родительского класса заимствуются новым классом. |
http://ru.wikipedia.org/wiki/%D0%9D%D0%B0%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%28%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%29 |
полиморфизм |
взаимозаменяемость объектов с одинаковым интерфейсом. |
http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC_%28%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%29 |
объект |
Понятие «объект» подразумевает нечто, что обладает определённым поведением и способом представления. |
http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5 |
Нормальная форма БД |
формальное свойство отношения, которое характеризует степень избыточности хранимых данных и возможные проблемы. |
http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%BB%D1%8F%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B1%D0%B0%D0%B7%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 |
Нормалиация |
Целью нормализации является устранение недостатков структуры базы данных, приводящих к вредной избыточности в данных, которая в свою очередь потенциально приводит к различным аномалиям и нарушениям целостности данных. |
http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%BB%D1%8F%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B1%D0%B0%D0%B7%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 |
инкапсуляция |
свойство языка программирования, позволяющее объединить данные и код в объект и скрыть реализацию объекта от пользователя. |
http://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%BA%D0%B0%D0%BF%D1%81%D1%83%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_%28%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%29 |
Ментальная карта: