Size: a a a

2020 March 10

Pu

Process user in Go-go!
Мимо Проходящий
не правильно.
src не нужен
pkg не нужен
нужен - internal. В этом каталоге должно быть всё кроме cmd
то есть, в cmd у нас по факту должен быть только “main.go” ?
источник

C

Calculon in Go-go!
Process user
то есть, в cmd у нас по факту должен быть только “main.go” ?
да
источник

C

Calculon in Go-go!
Можно несколько ентрипоинтов
источник

МП

Мимо Проходящий in Go-go!
Process user
то есть, в cmd у нас по факту должен быть только “main.go” ?
если бинарник только лишь один - да
источник

G

Ghost in Go-go!
у меня в проектах бывает несколько бинарей, у меня так
/cmd/app1
/cmd/app2


при go build /cmd/app1 получаю бинарь app1, без указания флага -o
источник

M

Meow in Go-go!
Ghost
у меня в проектах бывает несколько бинарей, у меня так
/cmd/app1
/cmd/app2


при go build /cmd/app1 получаю бинарь app1, без указания флага -o
+, у меня так же
источник

G

Ghost in Go-go!
/pkg хорош, когда пишешь для проекта либы и кладёшь их туда (особенно когда несколько бинарей в одном проекте)
/pkg/mylib1
/pkg/mylib2


но там должны быть только либы, которые можно взять в будущем и перетащить в другой проект, а то что проекто-специфичное лучше класть или в спец пакет с нужным именем или таким же проектом в /internal

/internal/proj1
/internal/proj2
источник

DP

Daniel Podolsky in Go-go!
зачем этот pkg?
источник

G

Ghost in Go-go!
Daniel Podolsky
зачем этот pkg?
для библиотек которые можно расшарить
источник

M

Meow in Go-go!
Daniel Podolsky
зачем этот pkg?
Для кода общего для разных бинарей или который будет использоваться в других проектах
источник

G

Ghost in Go-go!
конечно лучше выносить их в отдельное репо, но когда нужен какой-то leftpad, это жирно
источник

DP

Daniel Podolsky in Go-go!
Ghost
для библиотек которые можно расшарить
это мусор же. кусок имени, не несущий никакой нагрузки
источник

G

Ghost in Go-go!
он позволяет убрать мусор из корня и "пометить" пакеты как библиотеки, которые можно в будущем выдрать в другой проект

Один из примеров
https://github.com/prometheus/prometheus/tree/master/pkg
источник

Pu

Process user in Go-go!
Ghost
я использую go mod
а в настройках ide пропсывается автоматом global?
источник

G

Ghost in Go-go!
в основном туда кладут очень мелкие либы
источник

G

Ghost in Go-go!
Process user
а в настройках ide пропсывается автоматом global?
при создании проекта можно выбрать тип проекта
а при открытии, зависит от существования файла go.mod
источник

F

Fred in Go-go!
Вопрос, а можно как-то json динамически обрабатывать без боли в одном ендпоинте. Сейчас поясню что хочу, допустим есть json
https://pastebin.com/tbm43pFT если вы заметили там разные названия вложенных структур.
источник

АП

Александр Попов in Go-go!
Fred
Вопрос, а можно как-то json динамически обрабатывать без боли в одном ендпоинте. Сейчас поясню что хочу, допустим есть json
https://pastebin.com/tbm43pFT если вы заметили там разные названия вложенных структур.
ну можно сделать общую структуру
источник

АП

Александр Попов in Go-go!
где есть и first и second
источник

АП

Александр Попов in Go-go!
дальше уже проверять по коду ниже что заполнилось
источник