Size: a a a

2020 June 16

SN

Stepan Neretin in Go-go!
https://pastebin.com/Q7vCLPD0
Есть условный код моего services/user
Мне кажется, что я говнокодю, когда каждый раз создаю репозиторий в методах
источник

Н

Никита in Go-go!
Stepan Neretin
https://pastebin.com/Q7vCLPD0
Есть условный код моего services/user
Мне кажется, что я говнокодю, когда каждый раз создаю репозиторий в методах
Сделайте метод, который будет инитить один раз, и потом вызывайте методы
источник

Н

Никита in Go-go!
Либо даже без метода
источник

Н

Никита in Go-go!
Прокидывать repo при создании сервиса
источник

AS

Alexander Shavelev in Go-go!
Stepan Neretin
https://pastebin.com/Q7vCLPD0
Есть условный код моего services/user
Мне кажется, что я говнокодю, когда каждый раз создаю репозиторий в методах
type UserService struct {
   repo *repositories.UsersRepository
}


у вас же тут есть ссылка на репо
в методах структуры просто s.repo.Get..
источник

SN

Stepan Neretin in Go-go!
точней даже так
Есть контроллер,  но он не обернут в структуру
Как мне можно глобально обьявить сервисы, чтобы каждый раз в методах их не создавать?
источник

SN

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

ВГ

Владимир Гришин... in Go-go!
Stepan Neretin
точней даже так
Есть контроллер,  но он не обернут в структуру
Как мне можно глобально обьявить сервисы, чтобы каждый раз в методах их не создавать?
Сделайте глобал вар и не парьтесь
источник

SN

Stepan Neretin in Go-go!
а если немного запариться?Что можно сделать?
источник

ВГ

Владимир Гришин... in Go-go!
Stepan Neretin
а если немного запариться?Что можно сделать?
Тогда объясните, какую проблему решаете, которую не решит глобал вар?
источник

Н

Никита in Go-go!
Stepan Neretin
точней даже так
Есть контроллер,  но он не обернут в структуру
Как мне можно глобально обьявить сервисы, чтобы каждый раз в методах их не создавать?
Прокидывать уже созданные сервисы с уровня выше
источник

SN

Stepan Neretin in Go-go!
ну незнаю..Я просто после пхп
Мне кажется, что глобар вар зло?Разве не?
источник

SN

Stepan Neretin in Go-go!
Никита
Прокидывать уже созданные сервисы с уровня выше
тоесть условно здесь?
источник

SN

Stepan Neretin in Go-go!
http.HandleFunc("/api/users", api.GetUsers)
http.HandleFunc("/api/users/register", api.CreateUsers)
источник

ВГ

Владимир Гришин... in Go-go!
Stepan Neretin
ну незнаю..Я просто после пхп
Мне кажется, что глобар вар зло?Разве не?
Он тут в пакадже все равно, с другими не мешается, заменить заглушкой для теста - тривиально
источник

Н

Никита in Go-go!
Stepan Neretin
http.HandleFunc("/api/users", api.GetUsers)
http.HandleFunc("/api/users/register", api.CreateUsers)
Да, вполне. Только надо вам тогда замыкание делать, чтобы параметром прокидывать. Либо функции сделать методами структуры, инитить структуру и туда прокидывать готовые сервисы. А в методах дергать сервис со структуры
источник

SN

Stepan Neretin in Go-go!
а какой вариант по вашему лучше?
источник

Н

Никита in Go-go!
Stepan Neretin
а какой вариант по вашему лучше?
Со структурой думаю будет проще, чем каждый раз прокидывать параметры. Но и так и так норм
источник

SN

Stepan Neretin in Go-go!
просто получается что если у меня будет куча контроллеров, то у меня будет столько строчек кода?Разве не?
источник

SN

Stepan Neretin in Go-go!
для каждого контроллера свои сервисы прокинуть?
источник