Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Урок 5. Архитектура Global FrameWork.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
1.02 Mб
Скачать

Проектирование классов Общие сведения о классах

Класс является хранилищем совокупности объектов, имеющих одинаковые характеристики, подчиняющихся общим настройкам и операциям, функционирующих в рамках единой логики. Классы поддерживают наследование друг от друга в рамках дерева классов. Каждый класс содержит весь перечень собственных экземпляров объектов, а также все объекты классов-потомков.

Разработчику в рамках системы Global Framework предоставлена возможность визуального проектирования классов.

Класс содержит набор атрибутов, которые могут быть как значимыми (предназначенными для ввода значения определенного типа данных), так и ссылочными (предназначенными для выбора значения атрибута из справочника или другого множества). Помимо этих двух простейших типов атрибутов, атрибуты класса могут иметь переменную ссылочность, поддерживать ссылочность на другой класс, определять состояние объектов класса. Совокупность атрибутов класса определяется перечнем атрибутов, пришедших по наследованию от классов-предков, и перечнем собственных атрибутов классов.

Окружение класса

Окружение класса создается автоматически при компиляции класса и включает в себя:

1 Два типа Oracle, отвечающие за серверную часть (реализующие серверный интерфейс для работы с классом), содержащие как служебные операции, отвечающие за добавление и удаление объекта класса, изменения значений его полей (атрибутов), блокировку, копирование элемента класса и т.д., так и пользовательские функции процедуры и функции для работы с элементами класса.

  • XXX_ClassNameDPI – системный тип, содержащий всю базовую бизнес-логику по работе с элементами класса. Данный тип не может быть отредактирован и создается(пересоздается) каждый раз при компиляции класса.

  • XXX_ClassNameAPI – пользовательский тип, являющийся наследником типа системного XXX_ClassNameDPI. В данном типе могут быть переопределены системные процедуры и функции, содержащие в типе XXX_ClassNameDPI, а так же могут быть добавлены пользовательские методы по работе с объектами класс

2. Представление Oracle (View) XXX_ClassName для доступа к объектам класса.

3. Таблицу(ы) хранения элементов класса, создаваемые в том случае, если атрибутам класса была задана индивидуальная структура хранения (см. Error: Reference source not found)

4. Выборку класса для представления объектов класса в клиентской форме (см. Error: Reference source not found) и стандартный набор операций (см. Error: Reference source not found) для работы с объектами класса через интерфейс.

Дерево классов

Для просмотра дерева классов откройте дерево классов (в главном меню Конфигуратора «Сущности -> Классы» или соответствующая кнопка на главном тулбаре приложения). Откроется дерево, отражающее иерархию наследования классов в системе. На самом верхнем уровне находится общий класс-предок всех классов системы, он называется «CLASS». В этом классе присутствует единственный атрибут ID «Идентификатор», являющийся первичным ключем, и наследующийся во все остальные классы. На втором уровне находятся классы, предназначенные для разделения всех классов системы на несколько отдельных иерархических ветвей наследования, по принципу разделения функциональности и смысловой нагрузки классов. Рассмотрим их подробнее:

BTK_Plan “Планирование»

Служебная ветка хранения ядровых классов, отвечающих за сервис настройки расписаний

BTK_Salary «Зарплата»

Специальная ветвь иерархии, на уровне которой выставлена служебная настройка, запрещающая формирование объектных типов с сервререыми методами. Предназначается для специальных классов подсистемы Global Salary

BTK_Setting «Настройки»

Ветвь иерархии классов, предназначенная для создания под ней классов, хранящих настройки.

ClassArray “Пространство классов»

Иерархия предназначена для хранения классов, которые в качестве объектов содержат ссылки на другие классы. Поэтому, на уровне ClassArray объявлен дополнительный атрибут idRefClass, ссылочный на классы.

Collection «Коллекции»

Ветвь иерархии предназначена для хранения классов, зависимых от некоторых других классов в рамках смысловой подчиненности. Объекты этих классов не имеют права на самостоятельное существование, а только в рамках объекта другого, управляющего класса. Как правило, эти классы описывают детализацию других классов – справочников и документов, и входят в составл бизнес-объектов качестве зависимых классов.

Document «Документы»

Одна из основных ветвей иерархии классов, предназначена для классов, хранящих документы. Документом считается сущность, формализующая некоторый момент осуществления бизнес-процесса, его подтверждение. Как правило, документ имеет дату, номер и состояние, а класс-документ выступает в качестве верхнеуровнего класса в бизнес-объекте.

FilterClasses «Классы фильтров»

Это классы, предназначенные для хранения временных настроек фильтрации, подбираемых пользователем в процессе его работы. Это особая ветвь иерархии, для которой дополнительно создается временная таблица с именем <Имя класса>GTT, предназначенная для хранения временных настроек фильтрации. Для их возможного сохранения для повторного использования, для класса этой иерархии имеется и постоянная структура хранения, совпадающая с именем класса.

Journal «Журналы»

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

Process «Процессы»

Служебная иерархия, предназначенная для хранения классов, объектами которых являются бизнес-процессы.

Reference «Справочники»

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

Report «Отчеты»

Иерархия классов предназначена для хранения сущностей, напрямую связанных с построением отчетов.

Rule «Правила»

Служебная иерархия классов, предназначенная для описания классов, связанных с настройкой правил работы бизнес-процессов.

Template «Шаблоны»

Ветка классов предназначена для хранения классов, описывающих шаблоны для создания объектов других классов.

Реактировать классы, находящиеся на 1 и 2 уровнях наследования запрещено. Создание новых классов должно осуществляться под уже существующими ветвями иерархии, как правило, внутри документов, справочников, коллекций и журналов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]