5.2.1. РЕЛЯЦИОННАЯ МОДЕЛЬ БАЗ ДАННЫХ
Реляционная база данных — это такая база данных, которая воспринимается ее пользователем как совокупность таблиц [8]. Если детализировать записи приведенного на рис. 5.5 примера, то получим структуру БД, изображенную на рис. 5.6. Эта база данных состоит из трех таблиц: R\,
Таблица R\ представляет поставщиков. Каждый поставщик имеет номер, уникальный для этого поставщика, фамилию (естественно, неуникальную), значение рейтинга и местонахождение (город).
Таблица R2, описывает виды товаров. Каждый товар имеет уникальный номер, название, вес и цвет.
В таблице отражена поставка товаров. Она служит для того, чтобы связать между собой две другие таблицы. Например, первая строка этой таблицы связывает определенного поставщика из таблицы R\ (поставщика с определенным товаром из таблицы /Ъ (с товаром Ті). Иными словами, она представляет поставку товаров вида Ті поставщиком по фамилии Пі и объем поставки, равный 300 шт. Таким образом, для каждой поставки имеются номер поставщика, номер товара и количество товара.
Из приведенных на рис. 5.6 таблиц следует:
♦ все значения данных являются атомарными, т.е. в каждой таблице на пересечении строки и столбца всегда имеется в точности одно значение данных и никогда не бывает множества значений;
♦ полное информационное содержание базы данных представляется в виде явных значений данных. Такой метод представления — единственный, имеющийся в распоряжении реляционной базы данных. В частности, не существует связей и указателей, соединяющих одну таблицу с другой. Для этой цели служат тоже таблицы. Так, таблица Ят, отражает связь таблиц R\ и /?2-
Как указывалось ранее, математическим термином для обозначения таблицы является отношение (relation), и реляционные системы берут свое начало в математической теории отношений. Основы реляционной модели данных впервые были сформулированы и опубликованы в 1970 г. доктором Э.Ф. Коддом. Предло-
Номер поставщика |
Фамилия |
Рейтинг |
Город |
ПІ |
Иванов |
20 |
Москва |
п2 |
Петров |
10 |
Курск |
П3 |
Сидоров |
30 |
Краснодар |
Яг (товары) |
Номер товара |
Название |
Масса |
Цвет |
Ті |
Гайка |
12 |
Красный |
Ті |
Болт |
17 |
Зеленый |
Тз |
Шайба |
5 |
Голубой |
Лэ (поставка товаров) |
Номер поставщика |
Номер детали |
Количество |
Пі |
Т) |
300 |
п, |
т2 |
200 |
Пі |
Тз |
400 |
п2 |
Ті |
300 |
П2 |
Тз |
400 |
Пз |
т2 |
200 |
П3 |
Тз |
300 |
Рис. 5.6. Реляционная БД поставщиков и товаров |
женные им идеи оказали большое влияние на технологию баз данных во всех ее аспектах, а также на другие области информационных технологий, например на искусственный интеллект и обработку текстов на естественных языках.
При работе с реляционными моделями используется как математическая терминология, так и терминология, исторически принятая в сфере обработки данных. Для того чтобы не возникало разночтений, ниже приведены основные формальные реляционные термины и соответствующие им неформальные эквиваленты:
Формальный реляционный термин |
Неформальный эквивалент |
Отношение |
Таблица |
Кортеж |
Запись, строка |
Атрибут |
Поле, столбец |
Реляционная модель БД имеет дело с тремя аспектами данных: со структурой данных, с целостностью данных и с манипулированием данными. Под структурой понимается логическая организация данных в БД, под целостностью данных — безошибочность и точность информации, хранящейся в БД, под манипулированием данными — действия, совершаемые над данными в БД. Эти три аспекта отражают и основные процедуры процесса накопления данных (хранение, актуализацию и извлечение).
Наименьшей единицей данных в реляционной модели является отдельное значение данных. Такие значения рассматриваются как атомарные, т.е. неразложимые, когда речь идет о данной модели. Множество подобных значений одного и того же типа называют доменом. Например, домен номеров поставщиков — это множество допустимых номеров поставщиков, домен объемов поставки — множество целых, больших нуля и меньших, например 10 000. Таким образом, домены представляют собой пулы значений, из которых берутся фактические значения, появляющиеся в атрибутах (столбцах). Смысл доменов заключается в следующем. Если значения двух атрибутов берутся из одного домена, то имеют смысл их сравнение, а следовательно, и соединение, и объединение, и т.д. Если же значения атрибутов берутся из разных доменов, то всякие их сравнения лишены смысла. Отметим, что домены по своей природе являются в большей степени понятиями концептуальными и могут и храниться, и не храниться в базе данных как фактическое множество значений. Но они должны специфицироваться как часть определения базы данных, а определение каждого атрибута должно включать ссылку на соответствующий домен во избежание каких-либо двусмысленностей.
Теперь определим главный элемент реляционной структуры — отношение.
Отношение на доменах 0\,02,...,0п состоит из заголовка и тела. Заголовок содержит такое фиксированное множество атрибутов А\,А2,...,Ап, что существует взаимно однозначное соответствие между этими атрибутами и определяющими их доменами = 1, п). Тело — это меняющееся во времени множество кортежей, да каждый кортеж, в свою очередь, состоит из множества пар атрибутов-значений (А(: К,), (/ = по одной такой паре для каждого атрибута А / в заголовке. Для любой заданной пары атрибут-значение (Л/ : V/) У\ является значением из единственного домена которым связан атрибут Таким образом, все отношения (см. рис. 5.6) соответствуют приведенному определению отношения.
Строго говоря, когда мы изображаем отношение в виде таблицы, мы просто используем удобный способ представления отношения на бумаге. Таблица и отношение в действительности не одно и то же. Дело в том, что при изображении таблицы мы явно или неявно упорядочиваем расположение столбцов (атрибутов) и строк (кортежей), хотя отношение — это математическое множество, а множество в математике не обладает каким-либо упорядочением.
Значение п — число атрибутов в отношении — называется степенью отношения. Отношение степени один называется унарным, степени два — степени три — тернарным, степени п — я-арным. В приведенной на рис. 5.6 базе данных степень отношений Я\ и равна четырем, а отношения /?з — пяти. Число кортежей в отношении называется кардинальным числом этого отношения. Кардинальные числа отношений Я\ Я2 и Лз равны соответственно 3, 3 и 7. Кардинальное число отношения изменяется во времени (кортеж может быть добавлен или удален) в отличие от его степени.
ЦЕЛОСТНОСТЬ РЕЛЯЦИОННЫХ ДАННЫХ
Важным следствием определений, сделанных выше, является то, что каждое отношение имеет первичный ключ, идентифицирующий это отношение. Поскольку отношение - это множество, а множества, по определению, не содержат совпадающих элементов, никакие два кортежа отношения не могут в произвольный заданный момент времени быть дубликатами друг друга. Пусть Я — отношение с атрибутами А\,А2,-...А„. Говорят, что множество атрибутов К - (А,-, А/....,А^) отношения Я является возможным ключом Я тогда и только тогда, когда удовлетворяются два независимых от времени условия: уникальность и минимальность.
Первое условие указывает на то, что в произвольный заданный момент времени никакие два различных кортежа отношения Я не имеют одного и того же значения
Второе условие свидетельствует о том, что ни один из атрибутов не может быть исключен из множества без нарушения условий уникальности.
Каждое отношение обладает по крайней мере одним возможным ключом, поскольку комбинация всех его атрибутов удовлетворяет условиям уникальности. Один произвольно выбранный возможный ключ для данного отношения принимается за его первичный ключ, а остальные возможные ключи называются альтернативными.
Помимо первичных и альтернативных ключей, идентифицирующих данное отношение, есть еще внешний ключ. В общем случае внешний ключ — это атрибут или комбинация атрибутов одного отношения Я", значение которого обязательно должно совпадать со значением первичного ключа некоторого другого отношения Я', причем внешний и первичный ключи должны быть определены на одних и тех же доменах. Внешние ключи в неявном виде связывают отношения. Примером внешнего ключа является атрибут "Номер поставщика" в отношении Ят, (см. рис. 5.6), поскольку этот атрибут может быть первичным ключом отношения
Целостность реляционной модели данных определяется двумя общими правилами.
1. Целостность по сущностям. Не допускается, чтобы какой- либо атрибут, участвующий в первичном ключе базового отношения, принимал неопределенные значения. Базовым отношением называют независимое именованное отношение (для БД поставщиков и товаров — это отношения Я\ и Я2) . Мотивировка этого правила определяется тем, что базовые отношения соответствуют сущностям в реальном мире, а следовательно, отличимы друг от друга, т.е. имеют уникальную идентификацию. В реальной же модели функцию уникальной идентификации выполняют первичные ключи, и, таким образом, ситуация, первичный ключ принимает неопределенное является противоречивой и говорит о том, что некоторая не обладает индивидуальностью, а значит, не существует. Отсюда и название — целостность по сущностям.
2. Целостность по ссылкам. Если базовое отношение Я" включает некоторый внешний ключ ГК, соответствующий некоторому первичному ключу РК какого-либо базового отношения R', то каждое значение FK в должно быть либо равным значению РК в некотором кортеже R" либо полностью неопределенным. Неопределенность внешнего ключа может возникнуть в ситуации, когда, например, имеется вакансия на должность в некоторый отдел. Для такой должности атрибут "Фамилия служащего", являющийся внешним ключом, имеет неопределенное значение в кортеже, представляющем эту штатную должность отдела.
МАНИПУЛИРОВАНИЕ РЕЛЯЦИОННЫМИ ДАННЫМИ
Виды действий (манипуляций) над данными в реляционной модели представляют собой множество операций, получивших в совокупности название реляционной алгебры.
Каждая операция реляционной алгебры использует одно или два отношения в качестве операндов и создает в результате некоторое новое отношение. Э.Ф. Коддом были определены восемь таких операций, объединенных в две группы по четыре операции в каждой.
Первая группа — традиционныетеоретико-множествен- ные операции (рис. 5.7).
Рис. 5.7. Диаграммы традиционных теоретико-множественных операций: а — объединение; б - пересечение; в — разность; г — декартово произведение |
В каждой из этих операций используются два операнда (отношения). Для всех операций, кроме декартова произведения, эти два операнда должны быть совместимы по объединению, т.е. они
должны быть одной степени и их i-e атрибуты (I = 1,п) должны быть связаны с одним и тем же доменом.
Операция "объединение". Объединением двух отношений А и В называется множество всех кортежей принадлежащих либо отношению А, либо В, либо им обоим. Символически эта операция показана на рис. 5.7, а. Математически операция объединения записывается так:
А1)в= {гЛе А или г .В},
где и — символ объединения;
е — знак принадлежности определенному отношению (множеству).
Операция "пересечение". Пересечением двух отношений А и В называется множество всех кортежей г, каждый из которых принадлежит как А, так и В (рис. 5.7,
АПб= {пг <А и г е. В], где П — символ пересечения.
Операция "разность". Разностью между двумя отношениями А и В называется множество всех кортежей каждый из которых принадлежит А и не принадлежит В (рис. 5.7,
А\В =
где \ — символ разности;
е — символ отсутствия принадлежности отношению (множеству).
Операция "декартово произведение". Декартовым произведением двух отношений А В называется множество всех кортежей г, таких, что г является конкатенацией (соединение в цепочки) некоторого кортежа а, принадлежащего А, и какого-либо кортежа принадлежащего В (рис. 5.7, г):
А х В= {ах, ау, Ъх, Ъу,сх, су, йх, йу}.
Вторая группа — специальные реляционные операции (рис. 5.8).
Операция "селекция". Пусть гкега представляет собой любой достижимый оператор сравнения скаляров, например =, >, >, < и т.д. 1Ъе1а-селекцией отношения А по атрибутам х и у называется множество всех кортежей t из А, таких, что истин предикат t.x theta t.y. Атрибуты х и ^должны быть определены на одном и том же домене, и для этого домена оператор theta должен иметь смысл. Вместо атрибута у может быть задана константа (например, выбрать из платежной ведомости записи о сотрудниках, имеющих зарплату 500 руб.). Таким образом, оператор theta-ce- лекции позволит получать "горизонтальные" подмножества заданного отношения, т.е. подмножества таких кортежей заданного отношения, для которых выполняется поставленное условие (см. рис. 5.8, а).
Операция "проекция". Она позволяет получить "вертикальное" подмножество заданного отношения, т.е. такое подмножество, которое получается выбором специфицированных (определенных) атрибутов с последующим исключением, если это необходимо, избыточных дубликатов кортежей, состоящих из значений выбранных атрибутов (см. рис. 5.8,
Рис, 5.8. Диаграммы специальных реляционных операций: а — селекция; б — проекция; в — соединение; г — деление |
Операция "соединение"(рис. 5.8, в). Пусть theta имеет тот же смысл, что и в операции селекции. Тогда отно
шения А по атрибуту х с отношением В по атрибуту у называется множество всех кортежей /, таких, что / является конкатенацией какого-либо кортежа а, принадлежащего А, и какого-либо кортежа в, принадлежащего В, и предикат а.х theta ь.у. принимает значение "истина". При этом атрибуты А.х и В.у должны быть определены на одном и том же домене, а оператор theta должен иметь смысл для этого домена. Если оператор — theta-равенство, то соединение называется эквисоединением (лат. aequus — равный). Из этого определения следует, что результат эквисоедине- ния должен включать два идентичных атрибута. Если один из этих атрибутов исключается, что соединение можно осуществить с помощью проекции, результат называется естественным соединением. Под неуточненным термином "соединение" понимают естественное соединение.
Операция "соединение" похожа на декартово произведение. Отличие состоит в том, что декартово произведение предполагает сцепление кортежа из отношения А с каждым кортежем из В, а в операции "соединение" кортеж из отношения А сцепляется только с теми кортежами из В, для которых выполнено условие а.х =
Операция "деление". В простейшей форме операция деления делит отношение степени два (делимое) на отношение степени один (делитель) и создает (продуцирует) результирующее отношение степени один (частное). Пусть делимое А имеет атрибуты х и у, а делитель В — атрибут у (см. рис. 5.8, г). Атрибуты Л.^ и В.у должны быть определены на одном домене. Результатом деления А на В является отношение С с единственным атрибутом х, таким, что каждое значение х этого атрибута С.х появляется как значение А.х, а пара значений (х,у) входит в А для всех значений у, входящих в В. Другими словами, кортеж включается в результирующее отношение С только в том случае, если его декартово произведение с отношением В содержит отношение А.
Из восьми рассмотренных нами реляционных операций пять являются базовыми. Это селекция, проекция, декартово произведение, объединение и разность. Остальные три операции могут быть определены через базовые. Например, естественное соединение может быть выражено как проекция селекции декартова произведения.
Назначение реляционной операции присваивания состоит в том, чтобы сохранить значение какого-либо алгебраического выражения.
Операции реляционной модели данных дают возможность произвольно манипулировать отношениями, позволяя обновлять БД, а также выбирать подмножества хранимых данных и представлять их в нужном виде. Таким образом, особенностями, определившими преимущества реляционной модели, являются:
♦ множество объектов реляционной модели БД однородно — структура БД определяется только в терминах отношений;
♦ основная единица обработки в операциях реляционной модели не запись (как в сетевых и иерархических моделях), а множество записей — отношение.
НАУЧНО-МЕТОДИЧЕСКИЙ АППАРАТ ОПИСАНИЯ ЭКОНОМИЧЕСКОЙ ИНФОРМАЦИИ В РЕЛЯЦИОННЫХ БД
Функционирование материальных систем может быть описано в форме сообщений. Сообщение о событиях, происходящих в материальной системе, представляет собой информационное отображение материальных процессов.
Сообщение может быть выражено на естественном языке, однако часто применяют форматированные сообщения, когда в них приводятся названия опорных свойств (параметров) происходящего события и их значения.
Форматированные сообщения — наиболее массовый вид сообщений, хранимых и обрабатываемых в
Набор сообщений, истинных для соответствующей материальной системы, непротиворечивых по отношению друг к другу и к концептуальной схеме, является базой данных.
Сообщения в БД обычно представляются в форматированном виде и хранятся в виде единиц информации. Единицей информации называется набор символов, которому придается определенный
Минимально необходимы две единицы информации — атрибут и составная единица информации (СЕИ).
Атрибутом называется информационное отображение отдельного свойства некоторого объекта, процесса или явления. Любое сообщение, как правило, записывается в форматированном виде как указание свойств (параметров) предметов, о которых мы говорим. Поэтому информационное отображение любого явления представляет собой набор соответствующим образом подобранных атрибутов.
Составная единица информации — это набор, состоящий из атрибутов и, возможно, других СЕИ. Простейшими СЕИ являются таблицы. СЕИ позволяет создавать произвольные комбинации из атрибутов.
Разработка баз данных, как известно, начинается с построения ее концептуальной схемы (модели).
Концептуальная схема (от слова concept — понятие) представляет собой описание структуры всех единиц информации, хранящихся в БД. Под структурой понимается вхождение одних единиц информации в состав других единиц информации. Следует отметить, что БД в целом также является информации.
Если рассматривать единицы информации как информационные объекты, то можно говорить об их свойствах. В то же время единицы информации — это нефизические объекты, так как они не занимают место в пространстве.
Простейшими характеристиками СЕИ являются имя, структура и значение. Имя СЕИ — это ее условное обозначение в процессах обработки информации. Структура СЕИ показывает взаимосвязь входящих в нее единиц информации.
Существует сравнительно много способов описания структуры СЕИ. Для описания, не зависимого от конкретных языков программирования и СУБД, достаточно указывать после имени СЕИ список имен входящих в нее атрибутов и СЕИ. Этот список указывается в круглых скобках, а имена внутри скобок перечислять через запятую. Имя СЕИ может сопровождаться размерностью, т.е. указанием на количество одинаковых по. структуре значений этой СЕИ. Размерность, если она не равна 1, указывается в скобках после имени СЕИ.
Значением СЕИ называются набор значений непосредственно входящих в нее атрибутов и набор собраний непосредственно входящих в нее СЕИ. Одно значение СЕИ при хранении ее в памяти ЭВМ часто называется записью. Все языки программирования содержат средства описания структуры СЕИ. Над СЕИ производятся нижеследующие операции.
Присвоение единице информации нового имени называется переименованием, объявление синонима — это установление второго, третьего и т.д. равноценного имени для единицы информации.
Над значением атрибута производится всего одна операция — перекодирование, т.е. существующий код заменяется на новый для всех значений.
Выборка — операция выделения подмножества значений СЕИ, которые удовлетворяют заранее поставленным условиям выборки.
Корректировка означает выполнение одной из операций:
♦ добавление нового значения СЕИ;
♦ исключение существующего значения СЕИ;
♦ замена некоторого значения СЕИ на новое значение.
Декомпозиция — операция преобразования исходной СЕИ в
несколько СЕИ с различными структурами. В результате декомпозиции одновременно производится преобразование множества значений.
Композиция — операция преобразования нескольких СЕИ с различными структурами в одну СЕИ. Декомпозиция и композиция являются взаимообратными операциями.
Нормализация — это операция перехода от СЕИ с произвольной структурой к СЕИ с двухуровневой структурой. Одновременно происходит перекомпоновка значений СЕИ.
Свертка — операция преобразования СЕИ с двухуровневой структурой в СЕИ с произвольной многоуровневой структурой.
При анализе экономических документов ставится задача разделения документа на элементарные осмысленные фрагменты, называемые показателями. Это позволяет установить смысловые взаимосвязи между различными обеспечить одина
ковое понимание всеми пользователями применяемых единиц информации и их единое обозначение, использовать полученные результаты для определения структуры базы данных.
Показатель представляет собой полное описание количественного параметра, характеризующего некоторый объект или процесс. Соответствующее описание произвольного свойства (необязательно количественного) называется атомарным фактом.
Чтобы точнее характеризовать атрибуты, образующие показатель, необходимо отметить существенные различия свойств, которые отображаются атрибутами. Материальные процессы, как известно, имеют качественную и количественную характеристики. Соответственно и атрибуты должны разделяться на два класса, которые называются "атрибуты-признаки" и "атрибуты- основания". Атрибут-признак представляет собой информационное отображение качественного свойства некоторого объекта, предмета, процесса, а атрибут-основание является отображением их количественного свойства. В состав показателя должны входить один атрибут-основание и несколько атрибутов-признаков, однозначно характеризующих условия существования основания.
Как единица информации, показатель является разновидностью СЕИ. Схематично структура показателя П представляется выражением
где — атрибуты-признаки;
Q — атрибут-основание.
Если представить себе показатель с двумя, например, атрибутами-основаниями, то его можно разделить на две части, в каждой из которых будут один атрибут-основание и характеризующие его признаки. Полученные части содержат меньше атрибутов и поэтому соответствуют определению показателя.
Таким образом, в показателях отображаются количественные свойства объектов и процессов. Вместе с тем существуют документы, не содержащие атрибутов-оснований, например анкеты кадрового учета, сведения о структуре подразделений предприятия и т. д. Следовательно, не вся экономическая информация может быть представлена в форме показателей.
Минимальный набор атрибутов показателя должен содержать:
♦ атрибуты, отображающие идентификаторы объектов;
♦ атрибуты, отображающие признак времени;
♦ атрибут, отображающий некоторое количественное свойство объекта или взаимодействия.
При установлении признаков и оснований в конкретных документах необходимо учитывать следующие закономерности:
1) если значение атрибута является исходным данным или результатом арифметической операции — это основание;
2) если значение текстовое — это признак;
3) если атрибут обозначает предмет — это признак;
4) если атрибут в некотором показателе является признаком (основанием), он будет играть эту роль и в других показателях;
5) если показатели описывают сходные процессы, их признанные части совпадают;
6) если основание показателя вычисляется по значениям других оснований, то набор признаков такого показателя есть объединение признаков, связанных с этими основаниями.
Критерием качества создания базы данных может служить минимальная избыточность хранимой информации. Обычно минимальная избыточность выражается принципом: каждое сообщение хранится в БД один раз. Соблюдение этого принципа дает ряд преимуществ:
♦ сокращается объем памяти ЭВМ, требуемой для хранения базы данных;
♦ сокращается трудоемкость ввода данных в ЭВМ и упрощается контроль за достоверностью вводимой информации;
♦ упрощаются алгоритмы корректировки данных, так как корректировка сообщения может быть проведена за одно обращение к базе данных.
Использование аппарата экономических показателей позволяет создать структуру БД с минимальной избыточностью, если сначала расчленить все сведения, циркулирующие в ЭИС, на показатели, а потом объединить атрибуты родственных показателей по принципу: в один файл включается группа экономических показателей с одинаковым составом атрибутов-признаков.
Одна из причин выделения показателей в особую разновидность единиц информации заключается в том, что показатель является минимальной группой атрибутов, сохраняющей информативность (осмысленность) и поэтому достаточной для образования самостоятельного документа.
Для показателей, описывающих экономические процессы (взаимодействие объектов), можно классифицировать их составные части:
♦ формальную характеристику, указывающую на алгоритм получения атрибута-основания в показателе;
♦ перечень объектов, участвующих в процессе;
♦ название процесса;
♦ единицу измерения атрибута-основания;
♦ определение момента времени или периода времени;
♦ название функции управления;
♦ название экономическом системы, в которой происходит описываемый процесс.
Указание всех названных частей необходимо для точного обозначения показателя. Атрибуты-признаки показателя должны отображать в обязательном порядке лишь перечень объектов, участвующих в процессе, и период (момент) времени. Очень часто в показатель включается признак, отмечающий единицу измерения, а остальные характеристики показателя обычно указываются в его названии, а не в хранимых значениях.
Показатель удобно применять как обобщающую единицу измерения объема данных.
Существует аналогия между экономическими показателями и переменными с индексами, которые рассматриваются, например, в линейной алгебре. Так, показатель П (Код материала, Цена) соответствует величине С(/), где С — цена материала с г-м Кодом материала. Переменная С соответствует атрибуту-основанию Цена, индекс i — атрибуту-признаку Код материала. В общем случае переменная всегда отображает атрибут-основание, а индексы этой переменной — значения соответствующих атрибутов- признаков показателя.
Естественное отличие состоит в том, что индекс переменной С обычно изменяется от 1 до некоторого фиксированного значения, а номенклатурные номера материалов (и вообще любые значения атрибутов-признаков) могут кодироваться не только порядковыми кодами, но и другими способами.
Закономерности, установленные в математике для арифметических операций над переменными с индексами, естественно, трансформируются в правила арифметических действий над показателями.
5.2.2. ОБЪЕКТНАЯ МОДЕЛЬ БАЗ ДАННЫХ
В последние годы все большее признание и развитие получают объектные базы данных толчок к появлению которых дали объектно-ориентированное программирование и использование компьютера для обработки и представления практически всех форм информации, воспринимаемых человеком.
Объектно-ориентированное программирование (ООП) в отличие от структурного делает акцент не на программные структуры (циклы, условия и т.д.), а на объекты. Объектом называют
почти все, что представляет интерес для решения задачи на компьютере. Это могут быть экранное окно, кнопка в окне, поле для ввода данных, пользователь программы, сама программа и т.д. Тогда любые действия можно привязать к такому объекту, а также описать, что произойдет с объектом при выполнении определенныхдействий (например, при "нажатии" кнопки). Многократно используемый объект можно сохранить и применять его в различных программах.
Таким образом, при объектно-ориентированном программировании создают необходимые объекты и описывают действия с ними и их реакцию на действия пользователя. Если создан и определен достаточно большой набор объектов, то написание программы будет состоять в том, чтобы включить в нее и связать с ней те или иные объекты, обеспечивающие выполнение необходимых пользователю функций.
Объект — достаточно крупный блок функционально взаимосвязанных данных, при извлечении которого из ОБД включаются процедуры преобразования и отображения данных по программам, входящим в состав объекта. Типы и структуры данных, из которых состоит объект, могут быть различными у разных объектов и создаваться самим программистом на основе стандартных типов данных используемого языка программирования. Создаваемые и описываемые программистом типы данных получили название абстрактных типов данных.
Таким образом, объектом называется программно-связанный набор методов (функций) и свойств, выполняющих одну функциональную задачу. Например, кнопка управления на экране — это объект, с которым происходят события, который обладает свойствами, описывающими его внешний вид и назначение, и набором методов для управления его поведением на экране.
Свойство — это характеристика, с помощью которой описываются внешний вид и работа объекта.
Событие — это действие, которое связано с объектом. Событие может быть вызвано пользователем (щелчок мышью), инициировано прикладной программой или операционной системой.
Метод — это функция или процедура, управляющая работой объекта при его реакции на событие.
Объекты могут быть как визуальными, т.е. их можно увидеть на экране дисплея (окно, пиктограмма, текст и т.д.), так и невизуальными (например, программа решения какой-либо функциональной задачи).
Если набор объектов имеет описание (концептуальная модель), указаны свойства и логические связи между объектами (логическая модель) и известно их местонахождение в памяти ЭВМ (физическая модель), то это позволяет извлекать объекты и применять их в соответствии с назначением многими пользователями. Следовательно, организуется объектная база данных.
Создание объектов — весьма трудоемкая программистская работа. Поэтому для облегчения труда прикладных программистов системными программистами созданы программы и развиваются системы программирования, поддерживающие ООП. В этих системах упорядочены и унифицированы многие процедуры создания объектов, разработаны шаблоны (классы) для описания методов и свойств объектов и т.д.
В настоящее время многие известные фирмы, занимающиеся разработкой программных продуктов, предлагают системы ООП. Например, широко известны такие продукты фирмы Microsoft, как Visual Basic, Visual FoxPro, Access, SQL Server. Такие системы не только упрощают создание объектов, но и позволяют организовать ОБД, и предоставляют средства работы с ней. Помимо поддержки ООП и ОБД перечисленные системы дают возможность создавать реляционную БД и манипулировать ею, что, впрочем, является их основным
Объектные модели данных еще не имеют строгой теоретической основы (как, например, реляционные), что затрудняет их создание и использование. Однако развитие средств мультимедиа, вычислительных сетей и передачи по ним аудио- и видеообъектов заставляет интенсифицировать поиски в направлениях как создания теории, как и практической реализации надежных систем объектных баз данных.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 Наверх ↑