Kirill
"13123" - не int
Kirill
а при Crazy map[int]Crazy ты не достанешь никогда реальное значение
Kirill
это строго бесконечная вложенность
Алексей
точно спасибо
Kirill
для этого interface{}
Алексей
завтыкал)
Алексей
спасибули
Kirill
геморрой такой, что никогда не окупится
Алексей
я просто джун который делает хоть что то
Алексей
а сори ! я даже не джун))
Алексей
мне сейчас главное пробывать а там получиться не получиться уже не важно наберусь опыта
Kirill
ну вот такую структуру данных делать точно не надо, если есть возможность не делать так
Roman
Kirill
crazyfuckingshit же?
pleasekillmenowwhatafuckingshamethisiscrazyfuckingpeaceofshit
Roman
pleasekillmenowwhatafuckingshamethisiscrazyfuckingpeaceofshit
ну тогда-уж: please_kill_me_now_whata_fucking_shame_this_is_crazy_fucking_peace_of_shit либо: pleaseKillMeNowWhataFuckingShameThisIsCrazyFuckingPeaceOfShit
Roman
pleasekillmenowwhatafuckingshamethisiscrazyfuckingpeaceofshit
а если это название метода тогда вообще весело: // PleaseKillMeNowWhataFuckingShameThisIsCrazyFuckingPeaceOfShit instructs the program to kill the author of this crazy fucking piece of shit code that's also a fucking shame func (f *FuckingPieceOfShitFactory) PleaseKillMeNowWhataFuckingShameThisIsCrazyFuckingPeaceOfShit() {}
Kirill
не, если это метод, то там еще ресивер будет
Заур
Daniel
какой все-таки мерзостный язык С, а...
Daniel
я тут вынужден возиться с нетривиальным кодом, и чет прям утомительно
Daniel
Да все как обычно. Цепочки инклюдов, циклические инклюды, отсутствующие инклюды (и тогда порядок инклюда в третий файл роляет), конфликтующие инклюды, макросы с одинаковыми именами и разным поведением, переопределяемые в инклюдах. Вся вот эта мерзость. Я уж и забыл, почему с++ именно си-плюс-плюс
Заур
😂😂
Заур
вы просто не умеете готовить С++
Мифический рецепт приготовления плюсов
Мерль
https://github.com/cosmos72/gomacro
Oleg
кто какой DI для Go использует?
Илья
замыкание - лучший DI
саша
кто какой DI для Go использует?
кто вообще DIC в Go использует, "гоните их, насмехайтесь над ними"
L
вот да, постоянно вижу в чатике про go di. Вопрос - зачем вам нужна эта магия?
Egor
в go di не особо нужен
саша
воообще, если вам в го понадобился DI контейнер, то у вы 1) выбрали не тот язык программирования 2) у вас проблемы с архитектурой
Je
читай выше
напомни, чье высказывание и почему я должен его читать?
L
в чем инъекция зависимостей магия?
неявное получения инстанса, каст типа
саша
напомни, чье высказывание и почему я должен его читать?
1) Моё высказывание 2) Потому-что сам спросил
Aleksandr
Je
1) Моё высказывание 2) Потому-что сам спросил
Я только усомнился в авторитетности источника и правоте суждения
L
ты что-то с чем-то спутал
ну вот беру первый репозиторий из гугла по запросу golang di https://github.com/sarulabs/di ctn := builder.Build() obj := ctn.Get("my-object").(*MyObject) ну хз такое удобство
Aleksandr
пару дней назад я приводил свой пример di без dic
саша
это dic. dic != di
Инкрементирую, DIC в go не нужен. DI же можно самому ручками зарезолвить.
Aleksandr
Инкрементирую, DIC в go не нужен. DI же можно самому ручками зарезолвить.
это уже более здраво. dic действительно выглядит избыточно - как правило приложения на go не такие большие чтобы добавлять какой-то слой зависимости
Oleg
скорее https://outcrawl.com/go-dependency-injection/
саша
блин вы ещё про фреймворк для акторов в го спросите
L
пару дней назад я приводил свой пример di без dic
а ну это другое дело, чесноговоря не знал про dic. Сам делаю что-то вроде отдельного пакета like Application с методами получения нужных инстансов
Alexander
блин вы ещё про фреймворк для акторов в го спросите
https://github.com/AsynkronIT/protoactor-go если нужен!
Мерль
Господа, а кто-то может посоветовать встраиваемый веб-редактор для Go? Без наворотов, подсветки и дополнения без учёта синтаксиса достаточно
Oleg
Давайте опрос: 1) Я использую какую-то либу для DI 2) Я использую замыкание, у меня нет сложных композиций зависимостей func SomeHandler(db *sql.DB) http.HandlerFunc { fn := func(w http.ResponseWriter, r *http.Request) { ... } return http.HandlerFunc(fn) } func main() { db, err := sql.Open(...) http.HandleFunc("/some-route", SomeHandler(db)) // etc. } 3) Использую структуру для хранения всех необходимых зависимостей type Env struct { db *sql.DB someRepo *SomeRepo otherRepo *OtherRepo } env := &Env{db: db} http.HandleFunc("/books", env.someHandler) func (env *Env) someHandler(w http.ResponseWriter, r *http.Request) { } 4) Другое
Илья
2/3
Мерль
Давайте опрос: 1) Я использую какую-то либу для DI 2) Я использую замыкание, у меня нет сложных композиций зависимостей func SomeHandler(db *sql.DB) http.HandlerFunc { fn := func(w http.ResponseWriter, r *http.Request) { ... } return http.HandlerFunc(fn) } func main() { db, err := sql.Open(...) http.HandleFunc("/some-route", SomeHandler(db)) // etc. } 3) Использую структуру для хранения всех необходимых зависимостей type Env struct { db *sql.DB someRepo *SomeRepo otherRepo *OtherRepo } env := &Env{db: db} http.HandleFunc("/books", env.someHandler) func (env *Env) someHandler(w http.ResponseWriter, r *http.Request) { } 4) Другое
DI в go public poll Использую структуру для хранения всех необходимых зависимостей – 17 👍👍👍👍👍👍👍 71% @hellb0ys, @twentydraft, @fskrypter, @Geshido, @Deff7, @negasus, @sluchainiyznak, @di3young, @repentant_gopher, @kapsamun, @emreu, @supmea, Alexander, @valyala, @nexmean, @Tweekus, @nordborn Я использую библиотеку для DI – 4 👍👍 17% Igor, @kukumbership, @EugeneKoshevoy, Дмитрий Я использую замыкание, у меня нет сложных композиций зависимостей – 2 👍 8% @crxfoz, @onokonem Другое – 1 ▫️ 4% @deathmoroz Я использую замыкание, у меня есть сложная композиция зависимостей ▫️ 0% 👥 24 people voted so far.
Alex
День добрый, помогите запустить в докере проект. Не пойму что нужно задать в конфиге чтоб видел папки. Ошибка: package app/api: unrecognized import path "app/api" (import path does not begin with hostname) Конфиг: FROM golang:1.10 WORKDIR /go/src/app COPY . . RUN go get -d -v ./... RUN go install -v ./... CMD ["app"] Проект лежит в папке app ругается на import api "app/api"
.
как я понимаю есть структура вида type Env struct { db *sql.DB }
.
Что вы дальше с этой структурой делаете? как передаете в юзкейсы, модели?
Alex
import path does not begin with hostname ошибку загугли
Я пробовал по разному задавать ENV GOPATH /go ENV GOPATH /go/src , но без результатно
Aleksandr
Я пробовал по разному задавать ENV GOPATH /go ENV GOPATH /go/src , но без результатно
не знаю причем тут GOPATH, но в тексте ошибки написано что путь не начинается с hostname
Alex
это как бы локальная папка, а не что-то сторонее
Aleksandr
не надо меня уговаривать) я вижу текст ошибки. загугли
Artur
Господа! Нормально ли поведение когда множество воркеров которые используя net.DialTimeout пытаясь подключиться создают системные треды?
Artur
большое количество тредов
Artur
ps грепнул
Kirill
И сколько там?
Artur
на 4к падает
Kirill
На 4к потоков?!
Artur
да
Artur
наверно ограничение системы
Kirill
Покажи, пожалуйста, ps свой