Обработка ошибок и исключения в многоуровневой (или луковой) архитектуре [закрыты]

Учитывая архитектуру лука, каковы преимущества и недостатки бросания исключений в бизнес-логике (которая находится в центре лука) для недопустимых параметров, предоставленных пользователем?

Альтернативой могут быть коды ошибок.

У меня есть аргументы для обоих подходов, исключения и коды ошибок, однако мне трудно решить.

3 голоса | спросил Flavius 27 12017vEurope/Moscow11bEurope/MoscowMon, 27 Nov 2017 17:11:50 +0300 2017, 17:11:50

2 ответа


2

Бизнес-уровень не должен получать значения, предоставленные пользователем, недействительными или другими. Уровень приложения должен уже проверять значения и преобразовывать их из домена приложения в бизнес-домен.

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

ответил Daniel T. 28 22017vEurope/Moscow11bEurope/MoscowTue, 28 Nov 2017 06:02:01 +0300 2017, 06:02:01
1

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

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

ответил doubleYou 27 12017vEurope/Moscow11bEurope/MoscowMon, 27 Nov 2017 23:28:24 +0300 2017, 23:28:24

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132