Уровень доступа к данным и бизнес-объекты

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

я предполагаю, что это действительно не отвечает на вопрос все же. Я предположил бы, что 'стандартная' мудрость выдающих исключения, будучи медленной была верна в более ранних версиях Java (< 1.4). Создание исключения требует, чтобы VM создали все отслеживание стека. Много изменилось с тех пор в VM для ускорения вещей, и это вероятно одна область, которая была улучшена.

6
задан Ashish 10 August 2009 в 02:44
поделиться

2 ответа

Найдите концепцию под названием «Domain Driven Design» - самая важная вещь, которая заключается в использовании так называемого шаблона репозитория (например, вашего класса UserDB) в качестве адаптера к базе данных, а также завод. Затем ваши бизнес-объекты или объекты предметной области включают в себя бизнес-логику и могут обрабатывать взаимодействия с другими бизнес-объектами.

Какую технологию вы используете? Что-то вроде ActiveRecord, вероятно, может вам сильно помочь.

4
ответ дан 17 December 2019 в 02:32
поделиться

Обычно бизнес-правила применяются в вашем BLL. Например, вы можете разрешить обычным сотрудникам колл-центра предлагать 10% скидку на новую услугу, но разрешить менеджеру предлагать скидку 20%. У вас будет бизнес-правило в вашем BLL, которое выглядит примерно так:

// Pseodocode
double Discount
{
    set
    {
        if (value > 10% AND Employee Is Not Manager) then throw Exception
        if (value > 20%) then throw Exception
        discount = value;
    }
}
2
ответ дан 17 December 2019 в 02:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: