Emin Zalaev
ыы мне лень логирование делать обернука я все через логгер/зап
Alexander
А зачем они нужны? Типо удобнее? Мне пока что net/http достаточно
ну типа дохрена мидлвар ставить. тот же гзип по умолчанию не идет
Pavel
То чувство, когда в Go пришло много php-шников, не умеющих без фреймворков... 🤣🤣🤣
Классная логика, т.е. по твоему фреймворки нужны только когда не умеешь писать собственный роутер, валидатор и т.д.?)
Emin Zalaev
да
Pavel
Печально, я то всю жизнь думал что они нужны для того чтобы ускорить разработку )))
Emin Zalaev
ну выкатят обновление снесут нахер твой код
Emin Zalaev
будешь переписывать и думать
Emin Zalaev
ого нифига я ускорил разработку
Pavel
Alexander
ну выкатят обновление снесут нахер твой код
никто то есть не знает об обратной совместимости из писателей фреймворков и пулы там без реквестов наверное принимаются
Emin Zalaev
Emin Zalaev
вам никто не запрещает юзать сторонние либы
Emin Zalaev
если вы уверены что рисков не будет юзайте господи
Emin Zalaev
мне запрещают
Emin Zalaev
вот и злюсь
Evgeny
запрещают юзать фреймворки... ты там что, тестовое пишешь? о_0
Pavel
Наверное работает на гос корпорацию или в жестком энтерпрайзе
Emin Zalaev
запрещаю вам срать
Emin Zalaev
Emin Zalaev
кэнсел культура победила
Emin Zalaev
эмина отменили
Pavel
Только вот видел я таких, которым либы запрещают использовать, они просто открывают код либы на гитхабе и копируют оттуда... Часто не вникая в код. За то все свое 😌
Emin Zalaev
чего
Emin Zalaev
тогда лайкну
Emin Zalaev
за старание
David
iostream
log_store := make(map[string]WordLogList)
не, ошибка всё присутствует далее
an112
halp plz
Короче смотри
an112
В го такая фигня, что нельзя в карте получать доступ к полям
iostream
а как организовать модель
iostream
мне вообще нужно типа списка в словаре в словаре, как в питоне: arr['folder']['word']['cookies']= ['some', 'some2', 'some3'] arr['folder']['word']['cookies'].append('some4')
an112
wordtmp, ok := log_store[result.Folder].word[result.Word] if ok{ wordtmp.cookies = cookies log_store[result.Folder].word[result.Word] = wordtmp }
an112
это первый способ
an112
во втором можно через указатели помучаться
Юра (Юрий Александрович)
мне вообще нужно типа списка в словаре в словаре, как в питоне: arr['folder']['word']['cookies']= ['some', 'some2', 'some3'] arr['folder']['word']['cookies'].append('some4')
Сначала нужно словесное описание задачи. Такое, чтоб вообще без кода. А дальше можно продуктивно думать.
Null
🛠 Bud GO Веб- миннималистичый фреймворк для Go-разработчиков, который помогает упростить процесс создания, запуска и обслуживания многофункциональных веб-приложений. На видео показан пошаговый процесс создания клона Hacker News с использованием Bud. ⚙ Код ⚙ Документация @Golang_google
Aidar
Здравствуйте Извиняюсь за оффтоп но Не могли бы вы объяснить что такое интерфейсы в Go я новичок в этом Почитал кучу статей , посмотрел кучу видосов не только на русском Но всё ещё интерфейсы для меня в тумане Заранее спасибо
Aidar
И зачем они нужны
Serejka
в соседнем чате просветления не наступило?))
Alexander
может потом придет понимание
Aidar
в соседнем чате просветления не наступило?))
Решил побольше мнений узнать😁
Илья
Решил побольше мнений узнать😁
ты использовал уже функцию fmt.Println? Значит знаком с интерефейсами. Что именно в тумане?
Aidar
От в чём вопрос у меня и то что в тумане
Dilame
Можно ли как-то сократить эту функцию? https://gist.github.com/dilame/520fc1cd47d3d4c792c7b3222ecb56e3
Emin Zalaev
название функции?
Andrey
Или длинный ретурн?
Emin Zalaev
и зачем сокращать, за каждую строку из зп вычитают?
Dilame
Или длинный ретурн?
Две строки, которые создают один и тот же объект с разными параметрами
Emin Zalaev
и такое бывает в линтерах?...
Andrey
Ну если у тебя этот объект имеет функцию с установкой опций, то можешь через него попробовать
Emin Zalaev
предпоследний ретурн конечно глаза режет
Andrey
Но ничто не мешает написать его вертикально по строкам
Emin Zalaev
для приличия хотя бы в отдельную переменную
Alexander
Может линтер бьёт его за длину)
линтер будет бить за название пакета с подчеркиванием уже
Andrey
линтер будет бить за название пакета с подчеркиванием уже
Я про это даже не стал писать уже. Тк задача в этом не стояла)
Илья
Можно ли как-то сократить эту функцию? https://gist.github.com/dilame/520fc1cd47d3d4c792c7b3222ecb56e3
https://gist.github.com/dilame/520fc1cd47d3d4c792c7b3222ecb56e3?permalink_comment_id=4223214#gistcomment-4223214
Dilame
для приличия хотя бы в отдельную переменную
Спасибо, так и правда намного приятнее!)
Dilame
линтер будет бить за название пакета с подчеркиванием уже
Это какой-то неправильный линтер, который бьёт за вещи, на которые я не в силах повлиять
Alexander
ну пакет же самодельный, еще на той стадии пока писался
Dilame
ну пакет же самодельный, еще на той стадии пока писался
Он писался каким-то чуваком 6 лет назад https://github.com/mwitkow/go-http-dialer
Dilame
Спасибо, так и правда намного приятнее!)
А можно как-то избавиться от дублирующего вызова? Например, в js я мог бы сделать что-то вроде http_dialer.New(proxy, ...options)
Dilame
https://go.dev/play/p/z81rhMrlzGC
Кстати, спасибо за этот пример! Я вчера собрал то, что мне нужно, с его помощью
Andrey
правда я не знаю как это сделать, у них там opt приватная, ну можно попробовать массив func(*HttpTunnel) создать, и его передать
🅞leksiy
Народ, по данному примеру, кто-то может внятно объяснить? Для друга спрашиваю https://go.dev/play/p/ESntAdGxMeH
Илья
поменяй ресивер на указатель и выведет 456 456
🅞leksiy
С указателем понятно, по поводу аргумента нет