Паттерны на практике 2, Zenject для самых маленьких, Unity, C#

  Рет қаралды 3,112

Sergey Kazantsev

Sergey Kazantsev

Күн бұрын

Пікірлер: 39
@assage
@assage 7 ай бұрын
Недавно наткнулся на твой канал. Я много видео посмотрел по Zenject и это самое наглядное объяснение на реальной практике. Каждое видео полезно. Спасибо за контент 🔥
@КорвинКори-б6у
@КорвинКори-б6у 7 ай бұрын
Урааа, спасибо за видос
@elementarist1991
@elementarist1991 7 ай бұрын
Запишите пожалуйста видео про Finite State Machine 🙏
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
Как раз материал готовлю, через недельку, максимум две будет на канале
@elementarist1991
@elementarist1991 7 ай бұрын
@@sergeykazantsev1655 это потрясающе ❤
@elementarist1991
@elementarist1991 7 ай бұрын
@@sergeykazantsev1655спасибо большое , жду 🔥👍
@wipethetears7913
@wipethetears7913 7 ай бұрын
Было бы здорово​@@sergeykazantsev1655
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
done
@beziboba9458
@beziboba9458 4 ай бұрын
Не совсем понимаю. Удалось проинжектить эвент бас "миддл эдишн" в НЕ монобеховский класс. Подписки прошли успешно, но вот как отписаться от событий не пойму. В эдиторе, при выходе из плей мода, дебаг.лог в методе Dispose не показывает ничего.
@beziboba9458
@beziboba9458 4 ай бұрын
Вопрос снят. У MonoInstaller есть метод OnDestroy. Вызвал Dispose в нем.
@sergeykazantsev1655
@sergeykazantsev1655 4 ай бұрын
Ну да, если класс не монобех, его должен dispose-ить кто-то другой)
@maximalpro
@maximalpro 3 ай бұрын
Только после этого видео, я наконец-то понял как это всё работает. Спасибо тебе большое, автор!
@mikhail6384
@mikhail6384 7 ай бұрын
огромное спасибо! насколько видео про zenject смотрел, ваше самое лучшее и понятным языком рассказано 👍
@ОлегАбрамов-д5ч
@ОлегАбрамов-д5ч 7 ай бұрын
Может кто то знает? Пытаюсь освоить zenject уже после Spring(java backend). Возникает вопрос: есть ли какие либо аннотации Qualifier? Ну или хотя бы возможность создать фабрику, которая будет создавать разные реализации интерфейса исходя из класса в который объект создаваемый фабрикой будет заинжекчен. Пока что получилось в класс внедрить фабрику, которая получает в метод Create() параметром Type и уже внутри реализации кастомной фабрики через switch или Dictionary выбирается вариант реализации. Но, конечно, хотелось бы как то упростить это странный код и вынести эту логику в биндинги...
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
Я пока не очень понимаю проблему. Есть фабрика, в неё вы хотите заинжектить префаб, который может быть разного типа? Речь идёт о монобех префабе или просто обычном классе? Пока не могу понять
@rob11nzon
@rob11nzon 7 ай бұрын
Пример со сказкой конечно прикольно придуман, но решение прокидывать иголку через все классы намеренно неправильное. Не удивлюсь если в реальном проекте ты бы создал зависимость от иголки только у яйца, а дальше пошёл так же ступенчато прокидывать яйцо в утку, а утру в зайца. И в этом случае Pure DI всё бы решил (мне кажется стоило бы об этом сказать в видосе).
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
С поинтом согласен, но я специально подобрал такой пример как некий edge-case, но этот пример имеет место в реальной разработке и такие "иголки" случаются, пусть и в более сложной форме, где нельзя прокинуть иголку в яйцо, а дальше уже без неё. Понятно что этот пример можно сделать чище, но чтобы сохранилась наглядность и без перегруза информацией была ясна проблема - решил сделать так
@MrG12g
@MrG12g 7 ай бұрын
Ваще круто рассказал, так держать))
@kirillkaleda5798
@kirillkaleda5798 7 ай бұрын
а что делать если я хочу внедрить сервис в класс который я создаю в реалтайме, но он не монобеховский?
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
Если сам новый класс который вы создаёте в реалтайме не является сервисом, то скорее всего diContainer.Inject(object) должно хватить, как на 11:50 В гитхабе можете посмотреть скрипт TurnManager.cs, там я так инжектирую команды
@bornumental146
@bornumental146 7 ай бұрын
харош
@VitVit312
@VitVit312 7 ай бұрын
Этот момент когда дотс кажется легче и понятнее, сколько не глядел но никак не могу убедить себя в использовании зенжекта и прописывать километр строк кода с биндами, через какое то время просто теряешь понимание что это "удобно", необходимость прокидывать какие то ссылки руками никуда не уходит, на кой он тогда нужен, волшебные зависимости о которых рассказывают на ютубах несут в себе столько воды что хватило помыться всему району Если бы конечно посмотреть какой то простой проект(сложнее чем 2 скрипта, хотя бы на десяток и 3 сцены) с нуля что бы понять за что мы боремся, где то самое удобно и как оно выглядит
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
Я потихоньку начинаю вкатываться в dots и ECS , так что скоро и у меня сложится про это какое-то мнение) Попробую написать небольшой проект и проанализирую насколько все удобнее с этим вашим ECS)
@kardonov
@kardonov 27 күн бұрын
​@@sergeykazantsev1655приветствую, каков вердикт в отношении дотс?😊
@chernos
@chernos 7 ай бұрын
Ничего ты быстрый
@sergeykazantsev1655
@sergeykazantsev1655 7 ай бұрын
У меня видео про анонс лежало в столе несколько дней)
Паттерн State, паттерн состояние, Unity C#
13:15
Sergey Kazantsev
Рет қаралды 4,5 М.
🧩 Расширяем Unity: Аттрибуты и функции
10:11
How To Get Married:   #short
00:22
Jin and Hattie
Рет қаралды 24 МЛН
Крутой фокус + секрет! #shorts
00:10
Роман Magic
Рет қаралды 25 МЛН
Spongebob ate Patrick 😱 #meme #spongebob #gmod
00:15
Mr. LoLo
Рет қаралды 20 МЛН
Every parent is like this ❤️💚💚💜💙
00:10
Like Asiya
Рет қаралды 18 МЛН
Стань программистом за 2 месяца с помощью Нейросетей
13:22
Сергей Дмитриевский. Программирование
Рет қаралды 2,2 М.
Избавляемся от If и Switch в коде на C#! КАК !?
14:38
Роман Сакутин
Рет қаралды 97 М.
Как реализовать паттерн декоратор (Decorator) в Unity?
22:16
Лавка Разработчика
Рет қаралды 6 М.
How To Render 2 Million Objects At 120 FPS
14:57
Tarodev
Рет қаралды 145 М.
Паттерн Command, Команда, Unity, C#, gamedev
20:00
Sergey Kazantsev
Рет қаралды 3,1 М.
How To Get Married:   #short
00:22
Jin and Hattie
Рет қаралды 24 МЛН