Лекция № 2. Организация бизнес-логики.

advertisement
Лекция № 2.
Организация бизнес-логики.
Практически любая ИС.
Три основных слоя .
HI
Human Interface
PD
Problem Domain
OS
Other systems
DM
Data Management
NT
Not this time
Организация бизнес-логики.
Три основных подхода:
Сценарий транзакции (transaction
script);
 Модель предметной области (domain
model);
 Модуль таблицы (table module);

Самый простой подход.
Сценарий транзакции.
Сценарий транзакции – процедура, которая получает на вход
информацию от слоя представления, обрабатывает ее,
проводит все необходимые проверки и вычисления, сохраняет
данные на уровне слоя хранения и активизируем операции
других систем. Затем процедура возвращает слою
представления определенные данные, возможно, осуществляет
при этом некоторые вспомогательные операции для
форматирования содержимого результата.
Бизнес-логика = набору процедур, по одной на каждую составную
операцию, которую способно выполнить приложение.
Преимущества:
 Представляет собой удобную процедурную модель, которая
легко воспринимается всеми разработчиками;
 Удачно сочетается с простыми методам организации слоя
источника данных;
 Определяет четкие границы транзакции.
Недостатки: Дублирование, потеря структуры.
Самый-самый ООП подход.
Модель предметной области.
Модель предметной области – структурируется
преимущественно вокруг сущностей
рассматриваемого домена.
Бизнес-логика = набору коопераций, реализованных в
виде взаимодействия различных объектов,
отражающих сущности предметной области.
Преимущества:
 Представляет возможность использовать все
возможности объектно-ориентированного подхода;
 Повторное использование;
 Определяет четкие границы коопераций.
Недостатки: Сложно, проблема организации уровня
хранения (O-R преобразование).
Пример:
-
-
new
Нечто среднее.
Модуль таблицы.
Модуль таблицы – промежуточный вариант,
компромиссный по отношению к первым двум,
реализованный с помощью наборов данных (record
set).
Бизнес-логика = организуется вокруг набора таблиц, что
облегчает структурирование, возможности поиска и
удаление, повторяющихся фрагментов кода.
Преимущества:
 Интеграция с остальными элементами архитектуры.
Недостатки: Ограничения на реализацию различных
ООП штучек (наследование, стратегии).
Пример:
new (theDataSet)
new (theDataSet)
new (theDataSet)
-
Итого:
Download