Чо-Т никак не соображу как в ГО разрулить циклические импорты у

меня есть

room.go:
type Room struct {
clients map[int]*client.Client
...
}
func (r *Room) AddClient(c *client.Client) {... }


client.go:
type Client struct {
room *room.Room
}


как избавиться от циклических импортов?

3 ответов

8 просмотров

Тут ошибка в архитектуре. Либо клиент не должен знать о комнате, либо комната о клиенте) Если тебе надо из клиента что-то сделать с комнатой, то через канал

Alex- Автор вопроса
Mike K
Тут ошибка в архитектуре. Либо клиент не должен зн...

Я пока сделал проще, запихал и комнату и клиента в один модуль, и там нет циклических импортов 🤣

Похожие вопросы

Обсуждают сегодня

Так а кто может спарсить всех участников чата? Идишники
Magic
18
да пофиг на капчу зашел в чат и молчишь при этом ты нонейм? пошел вон
Magic
17
Как удалить health check в Consul? Казалось бы, это должно быть не сложно, но я не могу найти в документации ничего про это, только про добавление service с health check "в н...
Roman
2
Гайз, а как отправлять с вейпора пуши на андроид? ) Меня вот осенило )))
Serg
11
А как можно понять что пользовательская программа завершилась если она не вызывала сисколл exit?
One
4
Всем доброго дня. Возвращаясь к вопросу о варнингах: есть ли способ заставить компилятор ругаться на вызов функций языка, которые уже не существуют? Например, я могу спокойно ...
Δημήτηρ
2
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
13
Как думаете, будут макбуки на WWDC?
Dmytro
6
Все еще ржу с mov ax, 0xA000 ; graphic segment ?? mov gs, ax
Berkus Decker
4
Нужно магазин с тильды на опен кат перенести Есть кто умеет? В лс
Magic
8
Карта сайта