Данная страница является статическим представлением статьи, расположенной на сайте http://gsbelarus.com
Динамический адрес страницы: ../modules.php?name=News&file=article&sid=379
Категория страницы: Статья;  Тема: Гедымин
Перейти к оглавлению.

Виды классов в иерархии бизнес-классов платформы Гедымин

В иерархии бизнес-классов платформы Гедымин встречаются классы следующих видов:
  1. Абстрактный базовый класс (Abstract Base Class -- ABC);
  2. Базовый класс;
  3. Производный класс или просто класс.
Примеры абстрактных базовых классов, это: TgdcBase, TgdcTree, TgdcLBRBTree и др. Абстрактный базовый класс не имеет главной таблицы (ListTable) и, соответственно, создать экземпляр такого класса нельзя. Основное предназначение абстрактного базового класса — это определение интерфейса для всех потомков.

Базовый класс предназначен для работы со списком объектов, имеющих общего родителя. Например, такие объекты как: Компания (TgdcCompany), Физическое лицо (TgdcContact), Банк (TgdcBank) и т.д. имеют общего родителя -- базовый класс TgdcBaseContact. Мы можем создать экземпляр базового класса и использовать его для отображения списка контактов. При вызове метода EditDialog, код базового класса определит тип текущей записи (GetCurrRecordClass), создаст экземпляр соответствующего класса и вызовет его метод EditDialog. Принято включать в наименование базового класса слово Base (пример: TgdcBaseContact).

Наконец, просто класс наследуется от базового класса или абстрактного базового класса и служит для представления конкретной сущности в базе данных. Если от простого класса наследуются другие классы, то он совмещает в себе черты поведения как базового класса, так и производного класса. Для того, чтобы внести ясность, рассмотрим класс Компания (TgdcCompany). От этого класса наследован класс Банк (TgdcBank). Если мы создадим экземпляр TgdcCompany, откроем список компаний, а затем попытаемся открыть одну из них на редактирование (метод EditDialog), то, если тип текущей записи равен типу Компания, то для редактирования будет использоваться текущий объект. Если тип текущей записи -- Банк, то для редактирования будет создан экземпляр класса TgdcBank у которого будет вызван метод EditDialog.

Андрей Киреев

Данная страница является статическим представлением статьи, расположенной на сайте http://gsbelarus.com
Динамический адрес страницы: ../modules.php?name=News&file=article&sid=379
Категория страницы: Статья;  Тема: Гедымин
Перейти к оглавлению.

Top 100 09.OPEN.BY Rambler's Top100