Базы данных Oracle - статьи

         

Объектно-ориентированная разработка приложений


Со времени своего появления в 1960-х годах объектно-ориентированная технология становилась все более зрелой. Поскольку появились индустриальные стандарты, обеспечившие ее повсеместное принятие, разработка объектно-ориентированных приложений стала в настоящее время доминирующей в области ИТ. Наиболее важные из этих стандартов:

  • UML (Unified Modeling Language) – унифицированный язык моделирования для объектно-ориентированного анализа и проектирования (Прим. ред. Общие сведения о языке UML можно найти, например, в статье [1]. В ней также приведен список рекомендуемой литературы по этому языку.);
  • стандарт объектно-реляционных баз данных SQL:1999 (Прим. ред. Более подробно со стандартом SQL:1999 можно ознакомиться по статьям [2] и [3]. О дальнейшем развитии стандарта SQL читайте [12]);
  • стандарты языков объектно-ориентированного программирования Java и C++. Прежде чем приступить к рассмотрению реализации стандарта SQL:1999 в СУБД Oracle9i и соответствующих ему объектно-ориентированных интерфейсов прикладного программирования для Java и C++, необходимо сначала обсудить UML.

Надписи на рисунке:

  • Inheritance – наследование (Прим.ред.: на рис. опечатка: "inheritanc" вместо "inheritance");
  • Aggregation ­– агрегирование;
  • Navigable Association ­– навигационная ассоциация.

Спецификации UML – это сплав лучших результатов, достигнутых в индустрии объектно- ориентированных технологий. Текущей является версия 1.4 этих спецификаций от Object Management Group (OMG), международной организации, разрабатывающей стандарты объектных технологий. (Прим. ред. В июне 2003 г. консорциум OMG принял новую версию этого стандарта – UML 2.0.) UML определяет стандартные конструкции для описания объектно-ориентированного программного обеспечения как объектной модели. Например, UML-диаграмма на рис. 1 изображает объектную модель приложения "Оперативный каталог", которое корпорация Oracle разработала как часть нового проекта Common Schema (общая схема). В этой объектной модели есть несколько классов (например, Category, leafCategory). Каждый из этих классов обладает рядом атрибутов и операций. Например, класс Category обладает атрибутами category_name и category_description, а также операциями add() и remove().

Классы также связаны между собой различными связями. Например:


  • класс leafCategory наследует от класса Category;
  • класс compositeCategory может агрегировать объекты класса Category;
  • а класс leafCategory имеет навигационную ассоциацию с классом Product_Information (то есть, классы leafCategory ссылаются на список объектов Product_Information).


Как только приложение проанализировано и спроектировано с применением UML, результирующая объектная модель может быть отображена в целевую реализацию с заданным языком программирования и сохраняемостью данных. После этого реализованное приложение готово для развертывания в рамках заданной целевой архитектуры. Преимущества объектно-реляционной технологии СУБД Oracle9i становятся очевидными по мере развертывания такого объектно-ориентированного процесса разработки. Как описано в следующем разделе, система объектных типов Oracle9i позволяет осуществлять отображение "один-к-одному" конструкций объектной модели UML в соответствующую объектно-реляционную схему.


Содержание раздела