|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
У меня в коде все функции или отрабатывают хорошо (то есть делают то что должны делать) ИЛИ выводят сообщение об ошибке и делают exit. Код: php 1. 2. 3. 4.
Но можно было бы вернуть false и в вызывающем коде обработать ситуацию. Код: php 1. 2. 3. 4. 5. 6. 7. 8.
Второй вариант мне не нравится. Засоряет код и усложняет чтение кода. Как нужно делать обработку ошибок? Эти ошибки не перехватываются set_error_hendler(). Это ошибки уровня логики приложения. Я понимаю, что разработчик, архитектор решает что и как, но меня интересует где об этом узнать подробнее? И как вы решаете это? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 00:11 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
второй пример кода такой: Код: php 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 00:14 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
Вопрос не понял, но подозреваю Вам нужны Exception`s ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 09:55 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
aliskin, 2 вариант не сильно усложняет чтение. Можно поставить восклицательный знак для краткости, и отступы для читаемости Код: php 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 10:12 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
Hett, НЕЕЕТТТ!!! авторЭто ошибки уровня логики приложения. Какое исключение будет вызвано, перехвачено ? если запрос вернул 0 строк ИЛИ пользователи не друзья. То есть ошибки нет. Но результат запроса (0 строк - то есть для вывода ничего нет) нужно обрабатывать? Еще раз повторяюсь: Речь идет про " ошибки " *, а не ошибки. Ну не знаю я как можно объяснить. Если вообще никто ничего не понял, то значит я не так выражаюсь :( ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 10:13 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
user89aliskin, 2 вариант не сильно усложняет чтение. Можно поставить восклицательный знак для краткости, и отступы для читаемости Код: php 1. 2. 3. 4. 5. 6.
Не стоит использовать обратную логику, это в любой книжке оп программированию в самом начале написано. Убрать отрицание и поменять местами блоки. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 10:15 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
user89aliskin, 2 вариант не сильно усложняет чтение. Можно поставить восклицательный знак для краткости, и отступы для читаемости нее. Отступы у меня в иде присутствуют. --- Это только один маленький пример. А если читать это в коде и таких фрагментов (как второй вариант) много, то... получается ерхня. Я хочу узнать кто как решает это у себя? Или вы даже не обращали внимание на это и не заморачивались на этой выдуманной(?) проблемой? В литературе я не видел ничего по этой теме. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 10:20 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
HettНе стоит использовать обратную логику, это в любой книжке оп программированию в самом начале написано. Убрать отрицание и поменять местами блоки. это в любой книжке оп программированию в самом начале написано всмысле? теперь я не понял... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 10:23 |
|
Правильная (научная) обработка ошибок (не set_error_handler())
|
|||
---|---|---|---|
#18+
Для меня все таки более предпочтительней первый вариант - в самом начале. Так понятней и меньше кода. Чем первый вариант плох? Что почитать по теме? Какие-то "шаблоны проектирования"??? Может Стив Макконелл - Совершенный код? Какие еще предложения будут? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2017, 10:29 |
|
|
start [/forum/topic.php?fid=23&msg=39433837&tid=1460682]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 288ms |
total: | 400ms |
0 / 0 |