@proGO

Страница 1418 из 1674
Subbotin
03.05.2018
21:00:34
Это хипстота докером обмазывается

Roman
03.05.2018
21:00:47
Subbotin
03.05.2018
21:01:46
Девопсы деплоют. Я кодю

Roman
03.05.2018
21:02:41
Девопсы деплоют. Я кодю
а девопсы как деплоют?)

Google
Subbotin
03.05.2018
21:23:30
А хуй их знает. Вроде солтом

Рпмки конечно. Без этой вашей педерастии

Cenator
03.05.2018
22:23:49
а почему не гарантировано что порядок ключей в мапе не соответствует порядку добавления? чем это объясняется?

Cenator
03.05.2018
22:27:52
тем как работают/устроены хешмапы
то есть в порядке вставки вообще никак? (например как в жс)

океей

Михаил
04.05.2018
00:39:08


Знакомые скинули первые материалы "Марио 2"

Zerogoki
04.05.2018
05:15:56
https://diogomonica.com/2017/03/27/why-you-shouldnt-use-env-variables-for-secret-data/
Вообще не понимаю смысл этих переменных окружения. Проще же в конфиге всё указывать или в аргументах к программе

Данила
04.05.2018
05:21:24
Есть ли готовые примеры реализации системы лицензий на Go?

Суть такова: Есть закрытая часть ПО на Go. Нужно, чтобы оно работало только у того, кто приобрел лицензию(и оплачивает ее). В идеале - лицензионный сервер + запрос на проверку лицензии от клиента. Примерно такая схема реализована в продуктах от Jetbrains

Google
Nick
04.05.2018
05:24:41
Сомневаюсь что есть такие готовые решения, а если и есть, то что стоит их юзать

Данила
04.05.2018
05:25:46
Мне хотя бы алгоритм позаимствовать

Nick
04.05.2018
05:27:37
Сделай сперва просто вариант, просто проверка ключа на сервере. Обойдут - делай лучше. У jb сейчас скорее всего много Java specific кода для этого

Kirill
04.05.2018
05:29:21
а license server'ы все равно в открытом доступе лежат)

Roman
04.05.2018
11:29:23
но поскольку в самих конфигах секретов хранить нельзя..

FRD Official - Dmitriy
04.05.2018
11:55:11
Мне хотя бы алгоритм позаимствовать
Можешь изуродовать загрузчик

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

Alexandr
04.05.2018
12:10:49
товарищи подскажите, а можно распарсить массив json вида [ { unknownText1 : { knownText : num1 } } , { unknownText2 : { knownText : num2 } } ... ] сразу в слайс структурок вида { key string, value int } где key это unknownTextы а value это numы ?

а то я сделал какую-то мерзоту type myStruct map[string]struct { Value uint8 json:"value" }

Alik
04.05.2018
12:16:04
мне кажется вы пошли по верному пути

просто мождно распарсить в выше указанную структуру, а потом её преобразовать в то, что вам нужно

Alexandr
04.05.2018
12:17:53
да, но мне хотелось бы в один шаг сразу, а то мапу что, придётся циклом в слайс делать, что не очень хочется.

Alik
04.05.2018
12:20:39
в один шаг, насколько я знаю, это сделать не получится, но вы можете это сделать в два шага в методе UnmarshalJSON

и тогда вы сможете это делать "в один шаг" в вашем коде

http://choly.ca/post/go-json-marshalling/ https://gist.github.com/mdwhatcott/8dd2eef0042f7f1c0cd8

Alik
04.05.2018
12:24:26
это же го, тут gc всё ненуджное приберет

Crypt
04.05.2018
12:25:09
Да как бы не так, ООМ может убить процесс раньше, чем гц отработает

Хотя, если джейсон маленький, то можно забить

Google
Alexandr
04.05.2018
12:26:39
http://choly.ca/post/go-json-marshalling/ https://gist.github.com/mdwhatcott/8dd2eef0042f7f1c0cd8
ну это то же самое, просто код будет в другом файле.

Alik
04.05.2018
12:26:47
в любом случае я не могу придумать как это сделать по-другому

ну это то же самое, просто код будет в другом файле.
да, именно так. это будет происходить за два шага, но вам не придется делать оба шага везде где нужен unmarshal, эти шаги будут выполняться автоматически под капотом

Alexandr
04.05.2018
12:28:34
это всё да. Но мне кажется, как-то можно в один шаг. сложность в том, что поле unknownText1 является ключом, а не значением, вот мне нужно все эти ключи пособрать

Alik
04.05.2018
12:29:01
for k, v := range myMap { }

Alexandr
04.05.2018
12:29:15
да нет, в один шаг я имею ввиду =))

Alik
04.05.2018
12:29:35
ну пробуйте, я не могу придумать такого способа ))

Alexandr
04.05.2018
12:30:22
надо просто структуру соответствующую сделать, не знаю пока.

Alexandr
04.05.2018
13:13:45
если я правильно понял Вашу ситуацию
а я вот не понял ваш ответ. your.CustomStruct - это что?

Oleg
04.05.2018
13:24:13
Это ваша вложенная структура, в которой вы можете создать различные поля в зависимости от Ваших нужд, по такому принципу вы можете создать сколько угодно вложенных структур и потом, с помощью Unmarshal проинициализировать все Ваши данные в целом без использования мап

Alexandr
04.05.2018
13:37:12
хм.. Не очень понимаю, но сейчас попробую.

чем отличаются структуры Data и your.CustomStruct ?

Oleg
04.05.2018
13:53:02
чем отличаются структуры Data и your.CustomStruct ?
Думаю, что экзампл всё объяснит https://play.golang.org/p/4UcFT7l1QZA

Alexandr
04.05.2018
15:29:39
мой таков:

{ "data1": { "value": 1 }, "data2": { "value": 2 }, "data3": { "value": 3 } }

Google
Alexandr
04.05.2018
15:31:37
вот его бы распарсить так чтобы он лёг в структуру: type myStruct struct{ key string // сюда должны ложиться data1, data2, data3 ... value int // сбда должны ложиться 1,2,3 ... }

вот я никак не понимаю хоть убей

https://play.golang.org/p/l9rRLUPmbbW
с мапой всё понятно, умеем, я с того и начал что не хочу сначала получать мапу, затем её переделывать в слайс структурок.

Aleksey
04.05.2018
15:34:06
с мапой всё понятно, умеем, я с того и начал что не хочу сначала получать мапу, затем её переделывать в слайс структурок.
Ты ведь мапишь json на объектную модель го, в любом случае нужно сначала повторить структуру, а потом распарсить в удобный для работы вид. На самом деле код парсинга довольно простой

Aleksey
04.05.2018
15:35:49
Так это и есть его структура

Admin
ERROR: S client not available

Alexandr
04.05.2018
15:36:16
или пихать всё в map[string]interface{}
проще уж в map[string]struct{value int}

Artem
04.05.2018
15:36:26
вот я и не могу понять, как мне повторить эту структуру без мапов
никак, ток если тебе этот json в другом формате заиметь

Artem
04.05.2018
15:36:48
так формат боль

Alexandr
04.05.2018
15:37:41
нет, жизнь

Aleksey
04.05.2018
15:37:57
нет, жизнь
https://play.golang.org/p/FlKiKcU-ggG

Artem
04.05.2018
15:39:13
https://play.golang.org/p/FlKiKcU-ggG
там как раз и не массив

Aleksey
04.05.2018
15:39:56
Понял, то есть должно быть keys и values?

Alexandr
04.05.2018
15:40:17
https://play.golang.org/p/FlKiKcU-ggG
большое спасибо за старания, у меня мой исходый вариант почти такой (только я результирующий массив создаю нужной длинны, а не аппендю). Я только пытался выяснить можно ли сделать не в два шага, а в один. а этот вариант и есть вариант в два шага. сначала в мап, потом циклом в слайс.

Понял, то есть должно быть keys и values?
да, всё верно, результат правильный, просто способ не тот = ) я всё думал можно ли распарсить именно так, но без мапы и цикла по ней

Google
Artem
04.05.2018
15:41:48
а ты хочешь в массив

Alexandr
04.05.2018
15:41:53
да

Artem
04.05.2018
15:43:00
ну вот и поэтому и делается в 2 шага, сначала по спеке, потом как хочешь интерпретировать

Alexandr
04.05.2018
15:43:05
я так понимаю что разговор пошёл по-новой, ибо так как я хочу - не бывает ? спасибо всем кто пытался = )

Crypt
04.05.2018
15:43:33
Советую бросить попытки, в 2 шага для го это ок)

Alexandr
04.05.2018
15:43:59
Aleksey
04.05.2018
15:44:11
да, всё верно, результат правильный, просто способ не тот = ) я всё думал можно ли распарсить именно так, но без мапы и цикла по ней
Если ты хочешь, чтобы результат был суперпроизводительным (настолько, что твой вариант тебе не подходит), то пакет json ты зря выбрал, там под копотом рефлексия. Есть алтернативные способы, где ты сможешь почти в один шаг и гораздо быстрее. Только кода чуть больше напишешь.

Artem
04.05.2018
15:44:21
это всё понятно = )
бывает, ток или с сахаром, или с другой либой (которая внутри скорее всего тоже самое будет делать)

Crypt
04.05.2018
15:44:27
Да нет, это в принципе нормальная ситуация прост

Aleksey
04.05.2018
15:44:33
Но, если честно, это итак очень быстро

Crypt
04.05.2018
15:45:40
Ну или жариться с собственным анмаршалером, который зохавает строку, а выплюнет слайс

Aleksey
04.05.2018
15:46:10
бывает, ток или с сахаром, или с другой либой (которая внутри скорее всего тоже самое будет делать)
С сахаром или без сахара, если сначала парсишь json, а потом приводишь к нужному формату, то в любом (даже динамическом) языке это будет два шага. Единственный вариант, это писать свой парсер, либо настройку над парсером, который будет заточен под единственный кейс.

Aleksey
04.05.2018
15:47:59
Парни, вы лучше мне дайте ответ на вопрос, как вы без дженериков, пишу “дженерал” парсер, половину кода “копипастить” приходится =(

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