в main? Либо есть вариант это делать красивее
usersGateway := usersGateway.New(db)
postsGateway := postsGateway.New(db)
likesGateway := likesGateway.New(db)
locationsGateway := locationsGateway.New(db, cache)
usersService := usersService.New(usersGateway, postsGateway)
postsService := postsService.New(usersGateway, postsGateway)
likesService := likesService.New(usersGateway, postsGateway, likesGateway)
locationsService := locationsService.New(usersGateway, locationsGateway)
usersController := usersController.New(usersService)
postsController := postsController.New(postsService)
likesController := likesController.New(likesService)
locationsController := locationsController.New(locationsService)
err = delivery.Serve(cfg.Server, usersController, postsController, likesController, locationsController)
я думал у меня у одного такой код получается :)
можно взять какой-нибудь DI, вроде wire, но мне кажется это оверкилл в большинстве случаев
Разбей по методам, чтобы каши не было в мейне
Пока вы не запутались в этом — нормально. А потом DI
Обсуждают сегодня