Size: a a a

2020 June 12

SS

Stanislav Sagan in Go-go!
Alexander Shavelev
по умолчанию при коммите вызывается
Да, реально перед комитом вызывается 👍
источник

S

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

SS

Stanislav Sagan in Go-go!
Это снова я 😁 Установил golint, и не могу понять что он должен делать, и как заставить его ругаться на код?
источник

🔚

🔚 in Go-go!
ты не используешь переменную
источник

🔚

🔚 in Go-go!
вот он и ругается
источник

SS

Stanislav Sagan in Go-go!
Мне в этом сообщении (https://t.me/gogolang/440388) скинули статью в которой советуют начать с gofmt и golint

Так вот, я не понимаю зачем я этот golint установил если он не ругается
источник

SS

Stanislav Sagan in Go-go!
Или его вообще не нужно было устанавливать? а есть golint встроенный в интелиджи?
источник

p

pragus in Go-go!
Dimka ☣️ 🦀
goimports :-)
лучше gofumports
источник

p

pragus in Go-go!
источник

Д

Денис in Go-go!
Привет всем
пытаюсь понять как создать клиента к АПИ в одной функции и использовать в другой.
Получилось запустить только так
https://pastebin.com/iYpHby8M
Пришлось создать новый тип, в котором хранится тип клиента, и создавать объект (в NewClient).
Пытался просто сделать
client := bitclient.NewBitClient(...)
и передать этого клиента в другую функцию getRepos параметром - не работает, при выполнении запроса получаю 401 ошибку. Видимо передаётся что-то не то.
Если я просто копирую код из getRepos в main - всё работает.

На сколько тот вариант что я сделал неправильный, и где почитать, как правильно это делать? Порылся в гугле, и это единственное решение которое нашел, но выглядит оно как-то странно.

Что можно почитать по этому поводу?
источник

SS

Stanislav Sagan in Go-go!
👍)
источник

p

pragus in Go-go!
источник
2020 June 13

ВХ

Валентин Хомутенко... in Go-go!
Как в go принято делать с переменными внутри цикла — объявлять снаружи или делать := внутри?

https://tour.golang.org/moretypes/23

var word string
var count int
var ok bool

for i := range words {
 word = words[i]
 count, ok = wordCount[word]
 if !ok {
  count = 0
 }
 count++
 wordCount[word] = count
}


vs

for i := range words {
 word := words[i]
 count, ok := wordCount[word]
 if !ok {
  count = 0
 }
 count++
 wordCount[word] = count
}
источник

ВХ

Валентин Хомутенко... in Go-go!
второе читается проще, кмк, но под переменные выделяется новая память каждый раз
источник

СГ

Сергей Гришаев... in Go-go!
Можно ваш пример сократить до такого:
for _, word := range words {
 wordCount[word]++
}
источник

s

sexst in Go-go!
Валентин Хомутенко
второе читается проще, кмк, но под переменные выделяется новая память каждый раз
Всегда стоит объявлять переменные из соображений минимального и  достаточного scope. То есть в цикле.  Тем более что в данном примере переменные на стеке будут.
И да, плюсую за ответ выше
источник

ВХ

Валентин Хомутенко... in Go-go!
Сергей Гришаев
Можно ваш пример сократить до такого:
for _, word := range words {
 wordCount[word]++
}
а, лол, ну да, int же 0 сразу
источник

ВХ

Валентин Хомутенко... in Go-go!
sexst
Всегда стоит объявлять переменные из соображений минимального и  достаточного scope. То есть в цикле.  Тем более что в данном примере переменные на стеке будут.
И да, плюсую за ответ выше
т.е. копирование / лишнее выделение памяти в стеке в общем случае не страшно в угоду читаемости и безопасности?
источник

ВХ

Валентин Хомутенко... in Go-go!
если речь не идет о большом массиве или длинной строке
источник

s

sexst in Go-go!
Валентин Хомутенко
т.е. копирование / лишнее выделение памяти в стеке в общем случае не страшно в угоду читаемости и безопасности?
Там вопрос буквально вставки во время компиляции одной инструкции для push onto stack и одной для release from stack. Это же не динамическое выделение памяти в heap во время выполнения.
Так что да, пренебрегайте и считайте околобесплатной штукой на фоне всего остального.
источник