|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVosttskyANAВсё это фигня... Следует возвращать OperationResult да и вообще писать в функциональном стиле Типа HttpResponseMessage? Кстати простое отображение OperationResult на HttpResponseMessage с нужным кодом, вместо if-ов :) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 18:26 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>hVostt, вчера, 21:20 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21547461][21547461] >...Если в компанию в разработку на C# придёт хоть трижды авторитетный человек со своими кодами вместо исключений, то пойдёт сразу на рынок труда со всеми своими монатками и дебильным мнением. Не могу с Вами согласиться. Многое зависит от задачи. Вот два примера: 1. Вызов удаленного метода (WCF) с возвратом информационного пакета. Инфопакет содержит код не штатной ситуации. 2. Вызов метода в рабочем потоке. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 18:32 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев1. Вызов удаленного метода (WCF) с возвратом информационного пакета. Инфопакет содержит код не штатной ситуации. Так возвращается пакет, а не код. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 18:38 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANAВМоисеев1. Вызов удаленного метода (WCF) с возвратом информационного пакета. Инфопакет содержит код не штатной ситуации. Так возвращается пакет, а не код.То есть не тупо -1 и фиг знает, что там произошло ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 18:38 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев>hVostt, вчера, 21:20 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21547461][21547461] >...Если в компанию в разработку на C# придёт хоть трижды авторитетный человек со своими кодами вместо исключений, то пойдёт сразу на рынок труда со всеми своими монатками и дебильным мнением. Не могу с Вами согласиться. Многое зависит от задачи. Вот два примера: 1. Вызов удаленного метода (WCF) с возвратом информационного пакета. Инфопакет содержит код не штатной ситуации. 2. Вызов метода в рабочем потоке. hVostt 'у надо верить))). WCF прекрасно сериализует исключения на клиента. Ты не в курсе. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 18:51 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 18:38 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550572][21550572] >То есть не тупо -1 и фиг знает, что там произошло Здесь подробнее. Возвращается пакет, содержащий 2-х байтный код выполнения метода. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:09 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>Petro123, сегодня, 18:51 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550618] [21550618] >hVostt'у надо верить))). Всё несколько сложнее, чем Вы представляете. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:13 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев>Petro123, сегодня, 18:51 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550618] [21550618] >hVostt'у надо верить))). Всё несколько сложнее, чем Вы представляете. По топику видно, что идолов в IT нету. Всё на собственной шкуре, на собственной шкуре). Щас он придет и ему расскажешь почему ему не надо, а тебе надо верить)) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:20 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев>skyANA, сегодня, 18:38 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550572][21550572] >То есть не тупо -1 и фиг знает, что там произошло Здесь подробнее. Возвращается пакет, содержащий 2-х байтный код выполнения метода. Не интересно, потому как не читабельно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:27 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев, может сразу dump возвращать? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:30 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANAВМоисеев>skyANA, сегодня, 18:38 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550572][21550572] >То есть не тупо -1 и фиг знает, что там произошло Здесь подробнее. Возвращается пакет, содержащий 2-х байтный код выполнения метода. Не интересно, потому как не читабельно. Нажал Ctrl + F, ввёл WCF, получил 0. Классная иллюстрация вызова удалённого метода WCF, просто супер ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:31 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
теперь я понимаю, от куда порождаются ошибки типа окна с сообщением о том, что произошла ошибка неизвестная ошибка и программа должна быть закрыта =) по типу "Что то случилось". Частенько на такое натыкаюсь в говнокодах. Что, где и почему нужно определять с помощью хрустального шара. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:35 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANAДядя Коляпропущено... а какие аргументы? Чистые функции. Легко тестировать. "Поезда" вызовов Исключения 1. легко писать 2. многие функции все равно используют исключения, как например работа с базой данных 3. поезда вызовов - не знаю что такое но похоже на стэк трейс думаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 19:41 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Roman MejtesВМоисеев, может сразу dump возвращать? )))) LOL ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 20:03 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 19:31 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550676][21550676] >Нажал Ctrl + F... Классная иллюстрация … Вы о чём? В статье так: Структура байтовой последовательности ответа в случае регистрации клиента Ошибка - (двухбайтовый код ошибки) Штатно - (0x00+0x00+IV)+[симметрично зашифрованное Info] Структура Info ответа для регистрации: [cmd клиента]+[guid аутентифицированного клиента]+[размер страницы]+[имя клиента] Структура байтовой последовательности для общего случая информационного запроса/ответа: Запрос: (КС+IV+индекс группы команд)+[Info] Структура Info запроса: [idxПакет+индекс команды в группе+параметры команды] Структура ответа: Ошибка - (двухбайтовый код ошибки) Штатно - (0x00+0x00+IV)+[Info] В общем случае Info ответа содержит результирующий набор данных в виде отсортированного массива строк... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 20:11 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>Roman Mejtes, сегодня, 19:35 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550681][21550681] >Частенько на такое натыкаюсь в говнокодах. Вот и пятачок прорезался ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 20:26 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Дядя КоляskyANAпропущено... Чистые функции. Легко тестировать. "Поезда" вызовов Исключения 1. легко писать 2. многие функции все равно используют исключения, как например работа с базой данных 3. поезда вызовов - не знаю что такое но похоже на стэк трейс думаю. Легко писать исключения? Интересно... Тогда о чём топик? Если для Вас просто и понятно где нужно исключение и какое, и как оно будет обрабатываться ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 20:35 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев>skyANA, сегодня, 19:31 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550676][21550676] >Нажал Ctrl + F... Классная иллюстрация … Вы о чём? В статье так: Структура байтовой последовательности ответа в случае регистрации клиента Ошибка - (двухбайтовый код ошибки) Штатно - (0x00+0x00+IV)+[симметрично зашифрованное Info] Структура Info ответа для регистрации: [cmd клиента]+[guid аутентифицированного клиента]+[размер страницы]+[имя клиента] Структура байтовой последовательности для общего случая информационного запроса/ответа: Запрос: (КС+IV+индекс группы команд)+[Info] Структура Info запроса: [idxПакет+индекс команды в группе+параметры команды] Структура ответа: Ошибка - (двухбайтовый код ошибки) Штатно - (0x00+0x00+IV)+[Info] В общем случае Info ответа содержит результирующий набор данных в виде отсортированного массива строк... И почему так? В чём плюсы? Кроме Вас с этим кто-то работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 20:37 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 20:37 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21550771][21550771] >И почему так? В чём плюсы? Кроме Вас с этим кто-то работает? Система не 3-х уровневая, а 5-ти. Инфопакеты надо транспортировать между слоями, некоторым уровням не должно знать их структуру. Никто. Проект умер. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2018, 20:54 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеевНе могу с Вами согласиться. Многое зависит от задачи. Вот два примера: 1. Вызов удаленного метода (WCF) с возвратом информационного пакета. Инфопакет содержит код не штатной ситуации. 2. Вызов метода в рабочем потоке. 1. Исключения это внутренний механизм. Несмотря на это они сериализуются и могут быть брошены внутри клиента если речь идёт об интеграции с внешним API. Например, служба внешнего файлового хранилища, вместо System.IO используется некий REST API. Проблемы отсутствия файлов, отсутствия доступа, проблемы с сетью, с работой самой службы (она даже код не сможет вернуть, если сломалась) -- никуда не делись. Пример не подходит. 2. В чём проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2018, 00:06 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANAКстати простое отображение OperationResult на HttpResponseMessage с нужным кодом, вместо if-ов :) Ну дык. А проблемы с сетью? Чтобы не разрываться между двух огней, правильно было бы в ответ на код ошибки таки выбросить исключения. Обёртка клиента, осуществляющая вызовы API не должна транслировать коды HTTP ошибок, если по уму. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2018, 00:09 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>hVostt, сегодня, 00:06 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21552946][21552946] >1. Исключения это внутренний механизм… Имеем цепочку: слой.1(клиент) <--> слой.2 <--> слой.3 <--> слой.4(сервер_приложений) <--> SQL_сервер. Обмен между слоями идет инфопакетами, которые в слое могут накапливаться в очередях. Ошибку SQL_сервера обрабатывает сервер_приложений, формирует инфопакет(первый байт которого не 0), который записывает в очередь слоя.3 и т.д. >2. В чём проблема? В эффективности и удобстве. Имеем: 1. Запрос на построение выборки: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
2. Класс обработчик Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2018, 02:46 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеевИмеем цепочку: слой.1(клиент) <--> слой.2 <--> слой.3 <--> слой.4(сервер_приложений) <--> SQL_сервер. Обмен между слоями идет инфопакетами, которые в слое могут накапливаться в очередях. Ошибку SQL_сервера обрабатывает сервер_приложений, формирует инфопакет(первый байт которого не 0), который записывает в очередь слоя.3 и т.д. В каждом слое могут быть свои ошибки. Каждый следующий слой должен кодировать свои ошибки + все ошибки поставщика? Плюс передавать по цепочке разнообразную информацию, которая может помочь правильно обработать ошибку, или хотя бы указать причину. ВМоисеев2. Класс обработчик ВМоисеев Код: c# 1.
ВМоисеев Код: c# 1.
Какой-то привет из девяностых, а не код. Отвратительный код, не понятно, что с этим wspErr делать, пользователю показывать ошибки СУБД? Даже если ваш заказчик/начальник понятия не имеет какого отвратительно качества код вы пишите, он всяко не обрадуется в UI сообщениям из СУБД. И вы уж не принимайте на свой личный счёт. Просто код настолько плох, что у нас даже младшие разработчики (джуниоры), так писать не будут, ибо это стыд и позор. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2018, 03:02 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVostt, не переживай, он же написал, что проект умер и кроме нас его код никто и не видел ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2018, 08:51 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVosttskyANAКстати простое отображение OperationResult на HttpResponseMessage с нужным кодом, вместо if-ов :) Ну дык. А проблемы с сетью? Чтобы не разрываться между двух огней, правильно было бы в ответ на код ошибки таки выбросить исключения. Обёртка клиента, осуществляющая вызовы API не должна транслировать коды HTTP ошибок, если по уму. А что проблемы с сетью? Почему правильно именно выбросить исключение? Его же кто-то должен будет обработать. А если ему по барабану на твои проблемы с сетью? Всё зависит от ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2018, 09:14 |
|
|
start [/forum/topic.php?fid=20&msg=39670852&tid=1399295]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
158ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
others: | 312ms |
total: | 576ms |
0 / 0 |