
Евгений
09.01.2017
13:43:33
Странно, на Desktop и Android спокойно воспроизводятся

Azat
09.01.2017
13:44:10

f4rt~
09.01.2017
13:44:20

Евгений
09.01.2017
13:45:10

Google

f4rt~
09.01.2017
13:45:18

Dmitriy
09.01.2017
13:46:23

Евгений
09.01.2017
13:46:35

Firdavs
09.01.2017
14:46:21
https://github.com/DanySpin97/PhpBotFramework
неплохой фреймворк

SuperUser
09.01.2017
14:48:51
Как же раздражают эти t.me/*-ссылки,

Firdavs
09.01.2017
14:49:31
почему?
красиво же

Kapusta
09.01.2017
14:58:23

Евгений
09.01.2017
15:00:12
Вот только спамить не надо)

f4rt~
09.01.2017
15:00:33
да я просто, обратить внимание на детали

Евгений
09.01.2017
15:01:00
Миша вообще шикарные мульты пилит)

Google

Dmitriy
09.01.2017
15:01:38
callback читаем с ответом
А если . мы ожидаем 2 ошибки? тоже калбеком обрабатывать ? и нам иногда нужны разные действия на одну и тоже ошибку

denisx
09.01.2017
15:06:49
>разные действия на одну и тоже ошибку
Шта?

Dmitriy
09.01.2017
15:12:00
2 ошибки? Поясни
Ну вот телеграм может выкинуть "что юзер заблокировал бота", "лимиты" - уже 2 разные ситуации

denisx
09.01.2017
15:13:12
Так, продолжай. Твой вариант кода

Богдан
09.01.2017
15:14:10

Евгений
09.01.2017
15:16:26

Dmitriy
09.01.2017
15:16:26
Так, продолжай. Твой вариант кода
try {
sendmessages();
}catch(TelegramLimitException){
//Тут лимиты. значит ждем.
}catch (TelegramResponceErrorException){
///Тут ошибка то что юзер уже не с нами. что-то делаем.
}

denisx
09.01.2017
15:18:31

Dmitriy
09.01.2017
15:20:31
Не кто не говорил о одновременно. Я хочу сказать что api может вернуть разные критические ошибки с одного действия. Если по циклу бегать рассылку делать. первые 10 пользователей пройдут норм. 11 в бане. 12 уже лимит.

denisx
09.01.2017
15:21:46
Если не одновременно, то cb и switch или хендлы, тут как напишешь.

Pavel
09.01.2017
15:22:27
Смысл эксепшенов в том что они делают код чище и понятнее
И код с обработкой ошибки можно вынести далеко за пределы основного кода.

Dmitriy
09.01.2017
15:22:46

denisx
09.01.2017
15:24:53
try catch нужен когда твоя строка крашит приложение и нет способа обойти это

Pavel
09.01.2017
15:26:09
Вместо месива из 80 строк кода и 50 строк обработок ошибки программист видит отдельно 80 строк кода, и в другом месте 50 строк обработки ошибок.

Theonic
09.01.2017
15:26:43

Google

Dmitriy
09.01.2017
15:26:48

yegorf1
09.01.2017
15:27:01
в каждом языке они свои
+ ты можешь писать так, как хочешь
компилятору вообще пофиг

Dmitriy
09.01.2017
15:27:29

Pavel
09.01.2017
15:27:42

Dmitriy
09.01.2017
15:27:47

yegorf1
09.01.2017
15:28:04

Theonic
09.01.2017
15:28:10

Pavel
09.01.2017
15:29:33

yegorf1
09.01.2017
15:29:38
да!
"чуваки, а стайлгайд норм?"

denisx
09.01.2017
15:32:14

Dmitriy
09.01.2017
15:32:31

Pavel
09.01.2017
15:33:38
Ошибка это исключительная ситуация
Которой в нормальном workflow быть не должно

denisx
09.01.2017
15:33:55
и ?
в твоём примере нет такого, поэтому использование не нужно

Pavel
09.01.2017
15:35:17
Эксепшены как раз позволяют не писать catch на каждый чих, а грамотно распределить обработчики по архитектурным слоям.

Google

Dmitriy
09.01.2017
15:35:34

denisx
09.01.2017
15:36:00
тяжко идёт. а мы только по основам прошлись. боюсь тесты данных и юниты ещё рано обсуждать :)

b0g3r
09.01.2017
15:36:39
ой-ёй
видимо испугаться нужно, но я не буду, пожалуй)

denisx
09.01.2017
15:37:14

Dmitriy
09.01.2017
15:37:37
в каждом запросе (сарказм)

b0g3r
09.01.2017
15:38:33
не вижу причин не использовать экзепшены там, где не нужна запредельная скорость
это мощное средство самого языка

Dmitriy
09.01.2017
15:39:16

Rocket
09.01.2017
15:46:57

Pavel
09.01.2017
15:48:04
В си тоже как бы нету, но это не значит что хорошо

Rocket
09.01.2017
15:51:09

Dmitriy
09.01.2017
15:51:25

Rocket
09.01.2017
15:51:53
Мозги сворачивает на бок, конечно, но нам после tornado/asyncio ничего не страшно ?

Constantine
09.01.2017
15:54:23

Google

Constantine
09.01.2017
15:54:36
err на уровень выше возвращай, чтобы один обработчик принятия решения с фаталкой был
потом утомишься такой код везде обновлять ))

Dmitriy
09.01.2017
15:55:01
да это пример от балды

Constantine
09.01.2017
15:55:09
но вообще
к этому привыкаешь!)
и как бы не звучало, приучает к тому, что ошибку всегда надо проверять ))

Rocket
09.01.2017
15:57:44

Dmitriy
09.01.2017
15:57:58
Есть же panic/recovery и defer
да есть такое. но для меня try-catch-finally блок имеет гораздо более понятную и логичную структуру, чем defer. видимо из-за того что go не мой оновной язык.

Rocket
09.01.2017
15:58:32

Constantine
09.01.2017
15:58:58
чуваки, просто там надо KISS любить )

Rocket
09.01.2017
15:59:47
Keep it simple stupid ????

Constantine
09.01.2017
15:59:48
всем не нравится Agile, но он нравится бизнесу. перфектционистам не нравится FFF, но он тоже не просто так существует
голанг это инструмент, он не богат, но и для богатости он не был создан, как тот же руби ) просто другая методология, принимай и понеслась ))

Dmitriy
09.01.2017
16:01:07

Constantine
09.01.2017
16:01:36
потому что так захотели )
ответа нет ))
почему там дженерики не сделали? потому что вот так