@proGO

Страница 1134 из 1674
Aleksandr
11.01.2018
13:57:35
что в хэндлере?

Александр
11.01.2018
13:57:44
это все в хендлере

код то уникальный, если бы он дублировался тогда да, выносить

Aleksandr
11.01.2018
13:58:12
нет

Google
Александр
11.01.2018
13:58:49
плодить 9999 абстракций под это?

спасибо я бд уже обернул

мне хватило

Aleksandr
11.01.2018
13:59:37
Александр
11.01.2018
13:59:58
ну если не в хедлере, значит еще один "класс"

варианта то всего два

Aleksandr
11.01.2018
14:00:11
ну если не в хедлере, значит еще один "класс"
это не абстракция - это ответственность

Александр
11.01.2018
14:00:19
либо мы инкапсулируем логику, либо нет

вы мне прегдалаете наплодить абстракций, что бы хендлер похудел

до "5 строк" ?

Aleksandr
11.01.2018
14:02:07
опять же сути это не меняет. ты не хочешь весь код в одном файле держать - не держи. go позволяет в рамках пакета иметь методы в разных файлах

Александр
11.01.2018
14:02:34
я понимаю, но он не очень структуированный получается

Google
Александр
11.01.2018
14:02:41
я люблю подпапочки, а тут облом ?

Aleksandr
11.01.2018
14:02:51
тогда все. сожги проект

Александр
11.01.2018
14:03:17
на самом деле я опять ночь не поспал, а на работу к 10-00

сижу O_O, туго идет

Alexey
11.01.2018
14:03:55
Александр
11.01.2018
14:04:08
ну я вообще адская сова

мне бы ночью сидеть работать ?

я просто не совсем понял есть ли смысл следовать интерфейсу

из за этого мне уже пришлось через контекст параметры из URL прокидывать

ибо в стандартном оно не поддерживается

Aleksandr
11.01.2018
14:06:26
Александр
11.01.2018
14:06:52
я не вижу смысла, и пытась отсечь лишнее ?

плюс он явно нам говорит - 1 структура - 1 хендлер

что явно не удобно

приходится 100500 штук инициализировать, вместо 1

Aleksandr
11.01.2018
14:08:23
еще раз: ты можешь реализовать структуру вида type Resource struct { Get(r,w) Post(r,w) }

это реализует интерфейс HandlerFunc

кивни, если понял

Александр
11.01.2018
14:08:55
это понятно

Aleksandr
11.01.2018
14:09:21
если понятно, перечитай последние свои 3 фразы - это неправда

Google
Александр
11.01.2018
14:12:16
щаз попробую вообщем

спасибо

я сегодня реально туплю

Oleg
11.01.2018
14:38:11
кто работает с grpc, подскажите, что делаете если клиент должен иметь дело с множеством сервисов.

Oleg
11.01.2018
14:41:44
с множеством разных сервисов. Или лучше все методы объединять в одном сервисе и не придумывать ничего?

чтобы был только один пул одинаковых клиентов grpc

Alexander
11.01.2018
16:48:08
он будет размером строк 300-400
помню времена на C/C++ люди писали в несколько тысяч строк и все в одном файле в перемешку с асм)))

потому что методы ДЛИННЫЕ
вроде принято описывать методы в том же файле что и структура...

Aleksandr
11.01.2018
16:57:20
вроде принято описывать методы в том же файле что и структура...
у него и была дилемма - либо одна структура с 4мя методами либо 4 отдельных структуры

Nikolay
11.01.2018
18:31:04
господа, а попинайте ногами подход, пожалуйста https://pastebin.com/dcHGd3U1

Nikolay
11.01.2018
18:31:41
можно ли так делать? имеет ли смысл? не сломает ли все маленькая внутренняя горутина с ожиданием, а если сломает -как без нее обойтись с закрытием канала?

хм, у меня практически идентичный код вызывает дедлок

и я не могу понять, почему

а все, понял, почему - незакрытый входной канал

Nikolay
11.01.2018
19:20:43
А зачем, собственно, вообще ждать вейтгруппу в отдельной рутине?
чтобы закрыть ее канал и тем самым послать сигнал, что она завершилась

вот вейтгруппу возвращать не надо, да

Mykyta
11.01.2018
19:21:42
Я про ненужный error, которого нигде нет, вообще молчу

Google
Nikolay
11.01.2018
19:22:30
разумеется, в боевом коде там может быть масса мест, где он будет возвращаться

вот почти такой же пример, только гарантированно рабочий, проверил - https://pastebin.com/iAejuT9t

Mykyta
11.01.2018
19:24:30
У тебя и так буферезированный канал, его не надо закрываь

Nikolay
11.01.2018
19:25:23
в каком смысле не надо? а как из for range выходить тогда?

Mykyta
11.01.2018
19:25:32
Потом у тебя собственный костыль для прерывания работы рутины. Используй context

Nikolay
11.01.2018
19:25:38
какая разница, буферизованный или нет?

Admin
ERROR: S client not available

Nikolay
11.01.2018
19:26:06
Потом у тебя собственный костыль для прерывания работы рутины. Используй context
что context, что stopCh - вообще разницы толком в этом примере нет

можно так, можно так, эквипенисуально

Mykyta
11.01.2018
19:31:13
Та все равно лапша какая-то

nezorflame
11.01.2018
19:32:23
если остальные фичи контекста не нужны, нет смысла усложнять, стоп канала хватит

Nikolay
11.01.2018
19:33:08
Та все равно лапша какая-то
Ты давай по делу. Это вообще модифицированный пример из Concurrency in Go, я его попытался обобщить на несколько воркеров

Nikolay
11.01.2018
19:38:33
я уже и забыл, в чем был вопрос)
Ну, нет ли каких-то явных проблем в таком коде и его логике :)

Мне не очень нравится маленькая горутина на закрытие, с другой стороны, так офигенно удобно строить пайплайны

Mykyta
11.01.2018
19:43:44
Мне не очень нравится маленькая горутина на закрытие, с другой стороны, так офигенно удобно строить пайплайны
Вроде ничего плохого в этом нет, кроме того, что она нужна для закрытия inCh, что немного не очевидно

Mykyta
11.01.2018
19:45:25
Nikolay
11.01.2018
19:47:26
Ну пасяба

Google
Aleksey
11.01.2018
20:05:33
Всем привет! Можете подсказать хорошую библиотеку для валидации API инпута?

Ivan
11.01.2018
20:26:18
добрый вечер) у группы есть правила? как здесь относятся к предложениям о работе?

nezorflame
11.01.2018
20:27:20
Есть, лучше постить в канал вакансий

https://t.me/golangjob

Ivan
11.01.2018
20:27:56
благодарю

g
11.01.2018
21:49:11
Привет! А кто нибудь интеграционные тесты на go пишет?

Никита
11.01.2018
22:11:55
Я как то писал. Было больно, хотя по бОльшей части из-за хреновой архитектуры.

Александр
12.01.2018
04:44:19
это все что я могу сказать по поводу написания тестов ?

Svyatoslav
12.01.2018
04:49:38
best practice. ты сколько программируешь на go? не видел как пакеты выглядят?
Извините, а раз уж речь зашла о best practice, подскажите, пожалуйста, книги, статьи или библиотеки, где можно эти самые best practice по организации кода web серверов найти. Я за пару месяцев смог навернуть и некое подобие mvc, и распихать весь код по мидлварам, после того, как пакет context нашёл. И есть ощущение, что где-то я не туда свернул.

Arch
12.01.2018
05:06:41
это все что я могу сказать по поводу написания тестов ?
В жопу тесты, только хардкор, дебаг на продакте ?

Александр
12.01.2018
05:33:06
Alexander
12.01.2018
06:48:43
Я обычным пакетом для тестов пользуюсь, но только там где нужно проверить как будет работать код (сортировка к примеру, поиск по массивам и тд...) а тестирование запросов - мне rest клиентов хватает

Михаил
12.01.2018
07:17:24
Добрый день, возможно глупый вопрос, но как организовать вывод в консоль(windows cmd) в одну строку, допустим процент загрузки/подготовки?

Svyatoslav
12.01.2018
07:22:41
смотри в сурсы пакетов go
Это хороший вариант, спасибо. Туда я в первую очередь пошёл, конечно. Там здорово видно, как организовать библиотеку. Может, конечно, я ещё недостаточно прозрел, чтобы увидеть там, как конечное приложение организовывать, ибо там довольно много кода.

Michael
12.01.2018
07:23:54
организовывать надо, чтобы было хорошоу

Страница 1134 из 1674