Классика баз данных - статьи

       

предлагает определённый способ реализации переменных


Напротив, "ОО-" предлагает определённый способ реализации переменных для любых типов данных. При этом "ОО-" никак не определяет и не ограничивает то, какие именно типы могут быть реализованы. Еще раз - модель данных задает спецификацию типов (при этом их реализация может быть любой) и, наоборот, "ОО-" предлагает реализацию (фактически для любых возможных спецификаций типов).

Эти принципиальные различия позволяет мне утверждать, что попытки создать "ОО-модель данных" (то есть смешать эти две концепции) лишены какого либо смысла. Важно понимать, однако, что указанные различия нельзя рассматривать как свидетельство их несовместимости - скорее наоборот. Говоря образно, "модель данных" можно сравнить с архитектурным стилем, определяющей облик конкретного здания, а "ОО-" – с конкретным набором современных строительных технологий, позволяющих построить любое здание. Можно воспользоваться терминами, предложенным В.Турчиным [], - тогда модель данных определяет то, как будет выглядеть "система", а "ОО-" является парадигмой "метасистемного перехода". Это ортогональные, несмешивающиеся вещи, однако развитие возможно только в их гармоничном совместном использовании. Именно поэтому, говоря о бессмысленности "ОО-моделей данных", я настаиваю, что необходимой является система, которая не смешивает, но объединяет эти ортогональные идеи, а именно ОО-система хранения данных, реализующая реляционную модель данных. Я называю такую систему RxO-системой, обозначая знаком "x" ортогональность реализуемых ею концепций.

Заинтересованный читатель здесь, конечно же, спросит – "А как это? Если фРМД вводит единственный

тип "отношение", и, наоборот, ОО-система позволяет описывать любые

типы, как это вообще можно совместить в рамках единой системы? Это же явное противоречие (тот самый пресловутый импеданс)!"

На самом деле никакого импеданса здесь нет. Импеданс, скорее, в наших головах и заключается он в непонимании того, что из простоты реляционной модели данных вовсе не следует, что реализующая ее система обязана манипулировать исключительно такими же простыми структурами данных.


Содержание  Назад  Вперед