Zenject в Unity! Ч.2. Архитектура игры, очистка ресурсов. Зенжект в юнити!

preview_player
Показать описание
⚡️⚡️⚡️ Полезные ссылки ⚡️⚡️⚡️

📝Всем шарп! Сегодня я расскажу вам о наверное лучшем инструменте для внедрения зависимостей и построения архитектуры в Unity - Zenject. В предыдущем уроке мы разбирали для чего нужен зенжект и как он помогает улучшить архитектуру игры, а сегодня продолжим изучать его функционал. Посмотрим на создание объектов, очистку ресурсов и крайне полезные интерфейсы IInitializable, IDisposable, ITickable. Зенжект в юнити!

🕒Тайм-коды:
➜ 00:00 - Вступление
➜ 00:28 - Создание объектов с помощью Zenject
➜ 03:27 - Внедрение конфигов и настроечных файлов
➜ 04:49 - Советы по чистоте кода
➜ 05:43 - Про интерфейсы IInitializable, IDisposable, ITickable
➜ 06:42 - Пример очистки ресурсов с IDisposable
➜ 07:52 - Пример с ITickable
➜ 09:03 - Заключение

🔥🔥🔥 На этом канале вы найдете множество уроков по Unity и C#, а так же различных видео на тему разработки игр, так что не стесняйтесь, заглядывайте на канал и вы обязательно найдете что-то по душе!🔥🔥🔥

#Unity#ЯковлевИлья#Zenject#архитектура
Рекомендации по теме
Комментарии
Автор

Для себя ничего нового не открыл, но для новичков будет действительно полезным и информативным. Одно важное замечание: IInitiazible это не старт. Мне даже кажется это ближе к какому-то LateAwake, а по факту это цикл жизни сразу после того, когда контейнер готов к работе и все проинициализировал. Считаю, что это важное замечание!

zebgagang
Автор

Ты классный, как и твои видосы. Очень рад, что нашёл твой канал. Не останавливайся!❤

Vitaltch
Автор

Хотелось бы увидеть урок по DOTween, а так видео очень крутое лайк!

LimanOff
Автор

офигеть, очень круто, огромное спасибо!!!!

maksimsazanovich
Автор

Годный урок! Хотелось бы про фабрики с Zenject увидеть в 3 части. А то в документации есть пример скудный пример (очень не нравится, что в классе Enemy есть вспомогательный класс Factory)

forcesoftheevil
Автор

Zenject полезная штука для связи на уровне абстракций.Чтобы понять как оно работает и зачем пятый принцип солид вообще нужен, то можно сделать самописный вариант. Для обучения и тренировки - полезно.
Для меня неудобно отсутствие асинхронных штук в самой библиотеке, особенно фабрик, так что приходится добавлять самостоятельно.

LameWacko
Автор

Это конечно не по теме. Но у кого-то были проблемы в стиле Hold on busy после ctrl shift b в редакторе? И если да что помогло?

EoLienFive
Автор

А что если Zenject выкидывает предупреждение, что мол плохая практика вызывать Instantiate до завершения всех инсталлеров, ну то есть когда в InstallBindings это делается на 2:48.

mdovsqh
Автор

Как zenject передает в конструктор объекта зависимость? Допустим ты биндишь 2 объекта, которые реализуют один и тот же интерфейс, а потом биндишь объект, в конструкторе которого этот интерфейс. Какой из двух объектов попадет в конструктор?

cqbznhh
Автор

А можно подробно рассказать про ваши MobileInput и DesktopInput, которые используют события? В душе не вдуплю как работать с этими Input'ами 😣

redtapecollection
Автор

@-it394 Привет! Скажи пожалуйста, у тебя самописный скрипт или расширение окрашивает редактор в красный цвет при запуске сцены?

KIRVASgames
Автор

Чуть не по теме, но подскажите кто шарит, пожалуйста)
Если мне нужно вызывать какое то действие 1 раз в 1-2 секунды, для этого лучше использовать Update или корутины?

ximotiv
Автор

Зачем создавать отдельные методы для того, что выполняется всего один раз? Говорится "для удобства чтения кода". Но для этого ведь достаточно написать строку с комментарием перед вызовом блока кода. Зачем же каждый раз создавать лишние функции. Это скорее всего и на производительности не лучшим образом скажется. Ну конечно не при инициализации, но в каком-нибудь Update() точно.

mrgoodpeople
Автор

Помню глядел стрим относительно свежий от к-синдиката, вроде сурьезные люди, со своими курсами и пр. вроде как даже сеньеры все поголовно))
И там один из лекторов такой "Юнити много чего не умеет, того, что нам надо. Например выводить свойства в инспектор!", а второй лектор, барышня, ему поддакивал...

Меня на этом моменте порвало, ибо выводить свойство в инспектор с помощью flield: я научился еще в начале своего обучения Юнити.

Lucioa