Size: a a a

Golang Developers — русскоговорящее сообщество

2020 October 24

т

тим in Golang Developers — русскоговорящее сообщество
Всем доброй ночи. Я раньше писал бэкенды всякие на нод.жс решил немного перекатиться на го, потому что стало интересно. И вот возник вопросик по структуре проекта. Есть один микросервис, я немного сомневаюсь насчёт его структуры. Вот такое нормально или палками бить будут?
источник

т

тим in Golang Developers — русскоговорящее сообщество
источник

т

тим in Golang Developers — русскоговорящее сообщество
Каждая папочка это отдельный го модуль у которого есть зависимости от других внутренних модулей
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
1. слишком много go.mod
2. лучше разбей по сущностям api/post/*
источник

т

тим in Golang Developers — русскоговорящее сообщество
Просто не хочется как-то в один пакет всё впихивать
источник

т

тим in Golang Developers — русскоговорящее сообщество
Поэтому столько го модулей
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
у тебя будут разные пакеты
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
в го пакет = папка
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
модуль = приложение
источник

т

тим in Golang Developers — русскоговорящее сообщество
Ага, а вот с импортами кстати у меня там проблемка мне их просто делать как

import service "./service" получается?
источник

M

Michael in Golang Developers — русскоговорящее сообщество
Даже больше, по хорошему модуль - это репозиторий отдельный в большинстве нормальных ситуаций.
А то что оно в одном файле - не беда, компилятор лишнего не вставит
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
тим
Ага, а вот с импортами кстати у меня там проблемка мне их просто делать как

import service "./service" получается?
import <package name from go mod>/directory/subdirectory
источник

M

Michael in Golang Developers — русскоговорящее сообщество
тим
Ага, а вот с импортами кстати у меня там проблемка мне их просто делать как

import service "./service" получается?
Не используйте относительные импорт пути
источник

M

Michael in Golang Developers — русскоговорящее сообщество
Анатолий
import <package name from go mod>/directory/subdirectory
++
источник

т

тим in Golang Developers — русскоговорящее сообщество
Анатолий
import <package name from go mod>/directory/subdirectory
О, чет даже не знал что так можно
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
источник

т

тим in Golang Developers — русскоговорящее сообщество
В общем, слишком много притащил за спиной из жаваскрипта
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
да, есть немного
источник

т

тим in Golang Developers — русскоговорящее сообщество
Тогда ещё дуракций вопросик, в главном файле такая штука сработала. А если у меня есть зависимость например в сервисе posts/api/post к posts/database, то он мне вываливает ошыбку что posts/database is not in GOROOT. Как бороться?
источник

А

Анатолий in Golang Developers — русскоговорящее сообщество
все с корня, зависимости везде подключаются одинаково, один и тот же файл в разных местах будет иметь один и тот же путь в импорте
источник