170 похожих чатов

Побить можете? https://github.com/anboo/sms-gateway/blob/master/service/di.go Это, конечно же, не di Но вот сделал такой билдер

объектов

Чтобы можно было из любого места достать уже созданный объект:
https://github.com/anboo/sms-gateway/blob/master/http/send_sms_handler.go#L23
formattedPhoneNumber, regionCodeByIp, err := service.GetObjectStorage().GetLocationManager().ParsePhoneAndFormatE164(
https://github.com/anboo/sms-gateway/blob/master/http/send_sms_handler.go#L32
p, err := service.GetObjectStorage().GetPhoneNumberManager().GetProviderForPhoneNumber(

Смотрел уберовский DI, там как то что то неудобно все, на функциях и с парсингом рефлексий и т.п.

Я не нашел как решить вопрос связи между объектами
Может я с самого начала ошибся, захотев оперировать всей этой шнягой как объектами?

13 ответов

15 просмотров

А тестировать как будете? Вот вам надо будет написать юнит-тест, который будет имитировать отправку смс, но без реальной отправки, как реализуете?

Есть же wire. Нафига эти велосипеды?

Сервис-локаторы в 2021 - это сильно, конечно. Что вам мешает руками граф зависимостей строить?

Danil-Andreyev Автор вопроса
Михаил Макарычев
Сервис-локаторы в 2021 - это сильно, конечно. Что ...

Я пришел из мира с автовайрингом и DI с коробки(

Danil Andreyev
Я пришел из мира с автовайрингом и DI с коробки(

Я тоже. Но скорее всего в том мире, откуда вы пришли, били по рукам за service locator

А зачем вам тут https://github.com/anboo/sms-gateway/blob/master/service/di.go#L12 если вы его не используете?

Danil-Andreyev Автор вопроса
Roman Timofeev
А зачем вам тут https://github.com/anboo/sms-gatew...

Это чисто первый работоспособный v0.0.1-alpla вариант стоража уже собранных объектов Он там сто раз переписывался и всё еще удалится Спасибо

https://github.com/anboo/sms-gateway/blob/master/service/location_manager.go#L25 не надо тут паниковать. https://github.com/anboo/sms-gateway/blob/master/service/location_manager.go#L33 проверка l.mixmind != nil не имеет смысла, кмк. https://github.com/anboo/sms-gateway/blob/master/service/location_manager.go#L36 тут нужен логгер.

https://github.com/anboo/sms-gateway/blob/master/storage/sms_storage.go#L10 почему int, а не time.Time?

Danil-Andreyev Автор вопроса
Roman Timofeev
https://github.com/anboo/sms-gateway/blob/master/s...

А почему не имеет смысла? mixmind не может быть nil? Вроде может - https://play.golang.org/p/OdmfYs46-B6 Или о другом речь?

Danil Andreyev
А почему не имеет смысла? mixmind не может быть ni...

А, может, если mixmindDatabasePath == "", но я бы всю эту историю с geoip2.Open вынес в отдельный метод

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта