Size: a a a

2021 May 27

⌬C

⌬ Richard Cooper in Go-go!
да господи, если я не могу раскодировать сообщение не зная как оно закодировано — это обфускация
источник

ЕО

Евгений Омельченко... in Go-go!
Ну ок. Все публичные функции ваших библиотек имеют тип func (interface{}) interface{}?
источник

⌬C

⌬ Richard Cooper in Go-go!
чел...
источник

ЕО

Евгений Омельченко... in Go-go!
Нет
источник

⌬C

⌬ Richard Cooper in Go-go!
ну давай передргивать начнем
источник

AR

Aleksandr Razumov in Go-go!
если в cbor начать экономить байты и писать что-то вроде

{1: {10: "foo", 11: "bar"}, 2: 21455124, 3: 114}

то вы изобретете protobuf
источник

ЕО

Евгений Омельченко... in Go-go!
Не давайте. Обфускация это намеренное преобразование данных с целью сокрыть их. А протобаф преобразует данные с целью экономии трафика
источник

DP

Daniel Podolsky in Go-go!
мне кажется - точки зрения сторон ясны.

нет необходимости биться за правду
источник

AR

Aleksandr Razumov in Go-go!
аргументы не технические и ведут к холивару
источник

⌬C

⌬ Richard Cooper in Go-go!
я раз 200 слышал о том, что протобаф хорош тем, что его сложно раскодировать без спеки, без рофлов, это считают его плюсом.

короче закрыли тему, технически протобаф неплох, но есть много минусов, о которых многие забывают (как и остальных бинарных форматов, у msgpack тоже есть проблемы)
источник

⌬C

⌬ Richard Cooper in Go-go!
справедливости ради, протобаф опускает индексы значений, + опускает индексы типов, от чего без той же спеки сообщение раскодировать даже так невозможно будет (с typelang телеговским точь в точь та же проблема, у телеграма спека это просто бред наркомана, лучше бы ее не было)

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

AR

Aleksandr Razumov in Go-go!
да хорошо что она есть, можно хотя бы по ней типов нагенерировать, там получается 300к строк кода, которые бы пришлось писать вручную без неё
источник

DP

Daniel Podolsky in Go-go!
а что, cbor для go существует?
источник

⌬C

⌬ Richard Cooper in Go-go!
конечно))) https://github.com/fxamacker/cbor

божественная штука, реально быстрая причем
источник

AR

Aleksandr Razumov in Go-go!
вот если бы была возможность юзать что-то типа cbor + спеку, чтобы по ней валидировать и код генерировать, было бы лучше
источник

AR

Aleksandr Razumov in Go-go!
а то обычно либо одно, либо другое
источник

AR

Aleksandr Razumov in Go-go!
видимо никому не нужно такое в индустрии и люди не понимают зачем
источник

⌬C

⌬ Richard Cooper in Go-go!
вот я ровно про это)) сама по себе спецификация это прекрасно, протофайлы этим очень хороши, за что grpc  большое спасибо

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

AR

Aleksandr Razumov in Go-go!
мне вот приходится решать проблемы минимизации бойлерплейта (клиент/сервер) и вероятности ошибки несоответствия спеки (например, опечатки), и это хорошо решается спекой + кодгеном
источник

AR

Aleksandr Razumov in Go-go!
возможно во время имплементации нового протокола в большинстве случаев решают, что выгоднее делать спеку обязательной и не передавать лишние байты
источник