ZENJECT ⚡️ Dependency injection в Unity

Zenject — контейнер внедрения зависимостей с открытым исходным кодом, нацеленный на применение с игровым движком Unity3D, обеспечивающий работу на большинстве платформ, поддерживаемых Unity3D. Стоит заметить, что Zenject можно применять и для С# приложений, разработанных без Unity3D. Этот контейнер является довольно популярным среди Unity разработчиков, активно поддерживается и развивается. Кроме того, Zenject обладает всем необходимым контейнеру DI функционалом.

Статья тут https://habr.com/ru/post/420235/

В этом видео

  • DI в Unity, Zenject, холивары, перегруженность
  • Что такое Zenject и требуют ли его в вакансиях
  • Использовать ли DI в играх?
  • Демка, Unity Learn и наши задачи здесь
  • Что такое DI, явные и неявные зависимости
  • Устройство и жизненный цикл Zenject, устанавливаем Extenject
  • Script Execution Order
  • Создаем BootstrapInstaller
  • Создаем SceneContext
  • Убираем героя со сцены и инстанцируем из кода, решаем зависимости
  • Ответ: Что если для инстанцирования используется другой framework, например, Photon?
  • Разница между AsSingle, AsTransient, AsCached, проблемы singletone
  • Чем плоха инжекция в методы, как организовать инжекцию в MonoBehaviour, как быть без конструктора
  • Можно ли инжектить зависимости в поля?
  • Пробрасываем зависимости со сцены
  • Добавляем сервис
  • Саммари
  • Не становятся ли контексты god-обджектами?
  • Что за курс?
  • Какой должен быть уровень знаний у поступающего на курс?
  • Фабрики, начало, задача
  • Как называть классы, если не Manager и Controller?
  • Фабрики: продолжение, как задавать баланс на уровне
  • Использование Gizmo на сцене
  • Как бороться с проблемой, когда становится важным поярдок Bind в инсталлерах?
  • Фабрики: продолжение, префабы, EnemyFactory
  • IInitializable
  • Преимущество маленьких методов
  • Как переходить на Zenject в большом легаси проекте
  • Как вы относитесь к архитектуре на ивентах через ScriptableObject?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *