Перейти к содержимому

Одиночки (Singletons) в Unity — это антипаттерн. Вот как это исправить.

GAMEDEV ENGINE ROOM

0:00 / 0:00

Одиночки (Singletons) в Unity — это антипаттерн. Вот как это исправить.

1 846 просмотров · 3 месяца назад
GAMEDEV ENGINE ROOM
13,3 тыс. подписчиков
1 846 просмотров · 3 месяца назад
В Unity синглтоны — это антипаттерн, но с помощью пользовательского пакета их можно заменить, протестировать и отделить от остального кода. В этом руководстве по Unity мы рассмотрим классический паттерн синглтона в C# и разберем его недостатки. Затем мы их исправим — сначала вручную с помощью интерфейсов, а затем автоматически с помощью пользовательского пакета, который превращает любой MonoBehaviour в синглтон с единственным атрибутом [Singleton]. В результате получается рабочий процесс с синглтонами в Unity, который слабо связан, тестируем и готов к замене на полноценную систему внедрения зависимостей, такую ​​как VContainer или Zenject, когда вы будете готовы к миграции. 💬 Присоединяйтесь к Discord:   / discord   🔹 Ссылки: Пакет на GitHub: https://github.com/Engine-Room-Games/... Метапрограммирование на C# (генераторы исходного кода):    • Unity Metaprogramming: Reflection, Source ...   🔸 Разделы: 00:00 Введение 00:32 Код 03:57 Ручные улучшения 05:30 Ручное развязывание зависимостей 09:33 Использование генераторов исходного кода #unity3d #gamedev #indiedev #csharp #softwarearchitecture #designpatterns