Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.221.112.220] |
|
Сообщ.
#1
,
|
|
|
У меня есть некий интерфейс. Должен ли я предусмотривать ошибки которые могут появится в результате изменения данных извне(то есть она не может произойти ни при каких действиях средствами только этого интерфейса)?
В свою очередь ничто другое не может повлиять на эти данные, кроме юзверя и его вмешательство, в моем случае в бд. Как обычно поступают в таких случаях? 1) Я ни при чем, сам сломал не мои проблемы. 2) Или корректно все обрабатывать и говорить пользователю что он что то напортил, хотя делать там ему было совершенно нечего. Чую не в тот раздел, но это наиболее общий. |
Сообщ.
#2
,
|
|
|
Pr0[)!9Y
По идее надо, но только не круче чем "System failure" выдавать и сразу лочить доступ. |
Сообщ.
#3
,
|
|
|
Ошибки само собой должны отсекаться. О подробных сообщениях речь не идет, но возвратить код ошибки или еще лучше — выдать Exception (раз возврат ошибки не является функциональностью), просто необходимо.
|
Сообщ.
#4
,
|
|
|
Цитата Pr0[)!9Y @ 1) Я ни при чем, сам сломал не мои проблемы. 2) Или корректно все обрабатывать и говорить пользователю что он что то напортил, хотя делать там ему было совершенно нечего. Есть простое правило если ты разрабатываешь библиотеку то должен пробрасывать исключения наверх или же генерировать собственные. Если же ты разрабатываешь клиентский код или работаешь с интерфейсом, то ты более свободен в выборе стратегии поведения, но в общем случае ты не должен демонстрировать пользователю подробности произошедшего. Достаточно будет перехватить исключение и сообщить пользователю о произошедшем сбое. |
Сообщ.
#5
,
|
|
|
Цитата Pr0[)!9Y @ Можно сделать 1 - в Release, 2 - в Debug. 1) Я ни при чем, сам сломал не мои проблемы. 2) Или корректно все обрабатывать и говорить пользователю что он что то напортил, хотя делать там ему было совершенно нечего. |