Dependency Injection в Go от Google - Wire Golang. ГАЙД

  Рет қаралды 2,403

Slavniy IT

Slavniy IT

Күн бұрын

Пікірлер: 13
@ЕленаЕкимцева-з5т
@ЕленаЕкимцева-з5т 8 ай бұрын
Видео 💥 Спасибо за труд! Дальнейших успехов!
@VyacheArt
@VyacheArt 8 ай бұрын
Спасибо!
@DmitryNULL
@DmitryNULL 7 ай бұрын
Вы упомянули, что используете 2 типа для чтения/записи бд. Непонятно что такое типы, но мы открывали 2 коннекта к базе и оборачивали в структуру, а когда надо чтото делать с бд, то явно указываем в какую реплику идти. Судя по видео вы пытаетесь из го сделать джаву, что противоречит философии го. Есть фидбэк от людей, которые приходили к вам в команду и глядя на репозиторий говорили, что это очень круто/отстойно? Как я понял у вас есть опыт разработки монолитов на го. Не могли бы вы поделиться причинами такого выбора и какими нибудь сравнительными тестами(rps, memory, profiler...) монолита с микросервисами на го? Да и вообще про монолиты на го было бы интересно узнать(на сколько сложно поддерживать, какие трудности есть, как воююете с жирными бинарниками, какой размер монолита...)
@АлександрЗверев-й1х
@АлександрЗверев-й1х 7 ай бұрын
Спасибо большое. Будет продолжение, но уже с reflection based DI?
@VyacheArt
@VyacheArt 5 ай бұрын
Думаю да, в будущем расскажу про uber/dig и defval/di. Спасибо!
@qbee1
@qbee1 3 ай бұрын
белая тема это сильно, чуть не ослеп
@Александр-б6с3ъ
@Александр-б6с3ъ 7 ай бұрын
Не хватает про shared зависимости темы. Часто в ногу стреляют себе не понимая, что создается, а что переиспользуется. Каждый инжектор создает по умолчанию для себя новые зависимости независимые. Если использовать более 1 инжектора и где-то в графе зависимостей нужен будет общий логер например или коннект к базе данных, то там для каждого графа зависимостей в рамках инжектора будут провайдеры вывываться и возвращать новые инстансы (если провайдер не сделан специально как singleton возврат). В symfony DI это опция `shared` регулирует явно например. Об этом стоило бы подсветить и показать как оба варианта решать в wire, чтобы дать более полные знания
@VyacheArt
@VyacheArt 5 ай бұрын
Можно сказать, что в Wire всё что создаётся в процессе "shared", то есть созданный единожды *log.Logger будет прокидываться далее во все инжекторы, которые требуют *log.Logger. Это можно заметить по сгенерированному файлу. Более того, нельзя использовать два инжектора, которые будут возвращать инстансы одного и того же типа, это тоже подсветил в разделе "5. Типы значений в Wire или ошибка multiple bindings for". Тут как раз наоборот, если нужно два логгера, то у каждого должен быть свой тип (через type aliasing, например), и для каждого типа свой провайдер. Тогда создадутся два независимых инстанса.
@Александр-б6с3ъ
@Александр-б6с3ъ 5 ай бұрын
@@VyacheArt Да , все так, в гайде об этом не хватило информации, хотя он выглядит достаточно основательным и полным. Если будет вторая часть, то этот гайд с дополнением можно смело давать новичкам, зная что он полный
@it1860
@it1860 8 ай бұрын
1
@xoka3130
@xoka3130 8 ай бұрын
жаль ток утиная типизация интерфейсов пропадает
@VyacheArt
@VyacheArt 8 ай бұрын
Ну она фактически остаётся, просто явно нужно биндить интерфейс и имплементацию 🙂 Но неявно да, оно не славливается
@aleksandrkravtsov8727
@aleksandrkravtsov8727 4 ай бұрын
это точно проще чем руками создать структурки?
10 КРУТЫХ идей Go проектов для новичков
5:55
Славный АйТи
Рет қаралды 4 М.
"Инъекция зависимостей в go на основе Wire" - Лекция в Смарте
24:54
風船をキャッチしろ!🎈 Balloon catch Challenges
00:57
はじめしゃちょー(hajime)
Рет қаралды 25 МЛН
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 12 МЛН
У вас там какие таланты ?😂
00:19
Карина Хафизова
Рет қаралды 19 МЛН
Wait for the last one 🤣🤣 #shorts #minecraft
00:28
Cosmo Guy
Рет қаралды 24 МЛН
Dependency Injection in Go
11:19
Adib Hanna
Рет қаралды 4,6 М.
Dependency Injection на примере Uber fx | Эйч Навыки
17:43
Эйч Навыки — менторская программа
Рет қаралды 6 М.
Каким джуном не нужно быть.
26:38
Java Основы
Рет қаралды 3,5 М.
Dependency injection in Go  / Дмитрий Дорогин (ozon.ru)
32:33
Всё про конкурентность в Go
23:36
defer panic
Рет қаралды 19 М.
Dependency Injection простыми словами
18:17
devschacht “Девшахта”
Рет қаралды 87 М.
風船をキャッチしろ!🎈 Balloon catch Challenges
00:57
はじめしゃちょー(hajime)
Рет қаралды 25 МЛН