@gogolang

Страница 1107 из 1630
Shahzod
29.05.2018
10:20:08
Добрый день. Раньше программировал на С++. Там была тема "Работа с бинарными файлами", то есть в файле храниться данные памяти. Есть ли такая возможность на Golang? Потому что работа с бинарными файлами быстрее, чем с текстовыми. Заранее спасибо!

Илья
29.05.2018
10:23:05
есть работа с бинарными файлам

Shahzod
29.05.2018
10:24:07
есть работа с бинарными файлам
Можно подробнее, пожалуйста

Jentry
29.05.2018
10:24:16
Можно https://golang.org/pkg/os/#File.Read

Google
Илья
29.05.2018
10:24:37
Можно подробнее, пожалуйста
а что подробнее? вы как с "бинарными файлами" в C++ работали?

The
29.05.2018
10:24:55
я думал все файлы бинарные

Shahzod
29.05.2018
10:26:12
когда в блокноте откроете бинарный файл, там нечитабельный текст. Текстовый файл можно читать. Я так различаю их.

Илья
29.05.2018
10:26:48
вы точно на C++ программировали? и насколько раньше?

Илья
29.05.2018
10:27:44
и как там в C++ с бинарными файлами?

Kirill
29.05.2018
10:28:48
прямо вчера.
Первый раз?

Jentry
29.05.2018
10:28:54
когда в блокноте откроете бинарный файл, там нечитабельный текст. Текстовый файл можно читать. Я так различаю их.
здорово, а как ЯП должен отличать бинарный файл от небинарного? тоже открывает блокнот и читает? Все файлы бинарные, по-другому они не могут быть сериализованы на диск, но дополнительно в некоторых ЯП объявлены методы для удобной работы с текстовыми - считать построчно и тд

Shahzod
29.05.2018
10:31:13
Первый раз?
да первый раз. Сразу начинал с файлoB! ?

Илья
29.05.2018
10:33:24
ну так в C++ как вы с "бинарнами файлами" работали?

Jentry
29.05.2018
10:33:44
Что ты хочешь сделать? просто прочитать файл - бери читай, если в структуры, то юзай encoding/binary, здесь пример http://varunpant.com/posts/reading-and-writing-binary-files-in-go-lang

Demian
29.05.2018
10:33:52
народ может кто работал с парсингом map[string]interface{} в структуру, есть ли понятны примеры или разьяснит?

Kirill
29.05.2018
10:34:19
Разница между "текстовым" и "бинарным" файлами только в формате энкодера, кмон

Google
Илья
29.05.2018
10:35:18
народ может кто работал с парсингом map[string]interface{} в структуру, есть ли понятны примеры или разьяснит?
идея сама по себе плоха, но google golang map to struct выдает https://godoc.org/github.com/mitchellh/mapstructure

Kirill
29.05.2018
10:35:29
Но плюсую насчёт качества идеи. Лучше бы так не делать

Demian
29.05.2018
10:36:15
это я делаю для JWT

типа чтоб в playload любую структурку подкидывать

других идей нету, поэтому пока эту реализовать нужно

Илья
29.05.2018
10:38:14
хм, а почему тогда туда json.RawMessage не положить? и разбирать в зависимости от условий далее уже в структуры

Demian
29.05.2018
10:40:49
тк возвращаемый тип type MapClaims map[string]interface{}

я пока хз как json.Unmarshal делать)

Serge
29.05.2018
10:47:55
всем привет, голлеги может кто поможет? вчера весь мозг сломал snp@foo% GOPATH=/home/snp/my/_projects/acme-dns/.go go test -run GetValidUsername -v === RUN TestGetValidUsername --- PASS: TestGetValidUsername (0.00s) PASS exit status 1 FAIL _/home/snp/my/_projects/acme-dns/acme-dns_build2/src/github.com/serge-name/acme-dns 0.011sпочему тест PASS, но в итоге FAIL? появляется после одного фикса (покажу, если надо) этот запускаемый тест — для совсем другого куска кода

Илья
29.05.2018
11:02:39
без кода ничего не скажешь

Serge
29.05.2018
11:10:20
код тут: https://github.com/serge-name/acme-dns/commit/31519935326103efeee2573049d3034249434b1a

вот этот фикс меняет картину кардинально

Kirill
29.05.2018
11:10:47
попробуй все таки err != nil и вот это всё

а то похоже, что он фаталит с nil

Serge
29.05.2018
11:12:29
м… попробовать можно, но тут ещё и интерес спортивный потому что по идее, log.Fatal(server.ListenAndServe()) это канонический запуск, везде так сам код компилится ОК и работает как надо

Илья
29.05.2018
11:12:34
а какая сигнатура у server.ListenAndServe()?

Serge
29.05.2018
11:12:56
как посмотреть? (я пока в Go начинающий ггг)

Google
Kirill
29.05.2018
11:13:31
а какая сигнатура у server.ListenAndServe()?
да ну, обычно err там будет валяться

да ну, обычно err там будет валяться
но вот там может быть и nil

Илья
29.05.2018
11:14:10
эмм, а для запуска горутины разьве не нужно чтобы функция была без возврата?

?

Илья
29.05.2018
11:16:00
да понял, почему то думал, что должна быть защита от дурака

Kirill
29.05.2018
11:16:20
не-а, тут уже рассчет на инстинкт самосохранения)

Илья
29.05.2018
11:16:23
соответственно попытка повесить listen фейлится, и усе

Serge
29.05.2018
11:17:17
м… тогда бы валились тесты соответствующие, где тот код тестируется там все тесты PASS, вообще все

Kirill
29.05.2018
11:18:22
я подозреваю, что гошка перед выходом тушит листенер, а потом log.Fatal() делает своё чёрное дело

Илья
29.05.2018
11:19:23
хм, кстати, тоже вариант

Kirill
29.05.2018
11:20:34
мне вообще нравится, как гошка умирает

Serge
29.05.2018
11:20:52
сделал так: listenAndServe := func(server *dns.Server) { // log.Fatal(server.ListenAndServe()) server.ListenAndServe() return }теперь тест проходит «но почему?» © я пока не понимаю, тест GetValidUsername этот кусок не тестирует же…

Kirill
29.05.2018
11:20:59
вы читали startpanic_m?

не надо игнорировать ошибки

вы читали startpanic_m?
кто не читал - почитайте, штука довольно смешная) https://github.com/golang/go/blob/master/src/runtime/panic.go#L708-L748

Google
Serge
29.05.2018
11:26:44
пасиб, if err … действительно помогло хотя я пока не понимаю, в каком случае ListenAndServe может вернуть не nil. видимо как раз в go test это; а в реальном приложении такого вроде как и не бывает? ну конечно в шоке я, почему код работает, а тест падает и без каких-то дополнительных пояснений, ну хоть бы чего написал поподробнее

Илья
29.05.2018
11:28:22
там log.Fatal

а это os.Exit(1) under the hood

я за это вообще не люблю log.Fatal

Kirill
29.05.2018
11:29:40
Но иногда лучше, чем паника, я считаю

Admin
ERROR: S client not available

Kirill
29.05.2018
12:15:58
Andrei
29.05.2018
12:16:18
Roman
29.05.2018
12:33:48
Привет! Ребятки, а помогите пожалуйста понять эту запись. type S3UserIdentity struct { PrincipalID string `json:"principalId"` } интересно понять про json, как это работает и куда смотреть. Спасибо!

Roman
29.05.2018
12:41:14
Кажется теперь понял. Спасибо большое!

Shahzod
29.05.2018
12:41:40
Структура имеет одно строковое поле с тегом в формате json. Это означает, что строку в формате JSON можно парсить прямо на эту структуру: jstr = `{"principalId": "any string;"}` var s3u S3UserIdentity json.Unmarshal([]byte(jstr), &s3u)

Den
29.05.2018
12:42:05
Гоферы, и все кому интересно, скоро, 2 июня в Харькове будет проходить Go митап Приходите, будем рады вас видеть ! ? событие на facebook : https://www.facebook.com/events/1809296232498435/ регистрация и билеты : https://app.softserveinc.com/apply/register/en/khgomeetup?utm_source=ID283_idr1192

Aliaksandr
29.05.2018
14:33:07
для тех, кто задолбался создавать структуры под парсинг каждого типа json'а - https://github.com/valyala/fastjson

Sergey
29.05.2018
14:34:34
эх лучше бы бампнуть fasthttp

Aliaksandr
29.05.2018
14:35:48
на fasthttp пока забил - другими делами занимаюсь (

Google
Aliaksandr
29.05.2018
14:35:59
но он нормально работает в проде

Sergey
29.05.2018
14:36:27
но он нормально работает в проде
только релиза давно не было

=> go dep берёт версию от 2016 года

Андрэ
29.05.2018
14:39:28
парни, а скажите пожалуйста, я правильно понимаю, что есть я обновил свой пакет, который через dep используется в других местах, мне надо в каждом другом месте делать dep ensure -update чтобы обновления затянуть?

Kirill
29.05.2018
14:40:23
но он нормально работает в проде
Чот я тебя в ТГ не видел, только в скупе

Aliaksandr
29.05.2018
14:41:34
я прятался )

Aliaksandr
29.05.2018
14:42:27
=> go dep берёт версию от 2016 года
ок, постараюсь бампнуть новый релиз. С 2016 года там в основном только багфиксы, которые у нас вылазили в проде

Sergey
29.05.2018
14:44:32
спасибо

Dmitry
29.05.2018
15:01:25
Oleh
29.05.2018
15:04:03
привет посоветуйте пожалуста найболее удобною библитеку для работы с тг ботами и где норм/более менее можно мокапить

Kirill
29.05.2018
15:04:38
Kirill
29.05.2018
15:05:37
Что не понятно?

Страница 1107 из 1630