2012-03-30 3 views
1

Я знаю, что это было задано ранее, но вот моя конкретная ситуация:Где должна выполняться проверка: конечная точка или объект?

У меня есть конечная точка (API, подверженная воздействию клиентов/пользователей), которая заканчивается вызовом открытых функций-членов некоторых объектов. Должен ли я проверять в конечной точке или в функции-члене?

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

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

Спасибо!

ответ

1

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

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

Смежные вопросы