Size: a a a

2021 February 24

AP

Alexander P in unity3d.ru
Roma Sality
можно по подробнее, мвс это модель вью контроллер? и как это помогает вам все делать без статики серез такой паттерн? например как вы развязываете доступ к окнам, как вы получаете доступ к звукам, доступ к базе данных и тд
Статик всего один — корневой синглтон. Модель и ресурсы работают через внешние данные, получаемые из сериализуемых файлов. Что туда не попадает, попадает в код в виде имён, которые передаются на загрузку из бандлов.
источник

AP

Alexander P in unity3d.ru
Корневой синглтон — аналог точки входа
источник

AP

Alexander P in unity3d.ru
Чтобы уменьшить глубину вложенности, можно, конечно, каждый контроллер / менеджер сделать таким же синглтоном, никто не запрещает. Но в целом, это не требуется.
источник

RS

Roma Sality in unity3d.ru
ну это понятно, как взаимодействует модель с данными и всьюхой. Что в них все передается, а как вызвать нужную модель или контроллер? чтоб туда все передать
источник

AP

Alexander P in unity3d.ru
AppManager.Instance.<контроллер>
источник

AP

Alexander P in unity3d.ru
Это если совсем просто
источник

RS

Roma Sality in unity3d.ru
это не синглтон?) это ли не связь?)
источник

AP

Alexander P in unity3d.ru
Я же сказал, что есть корневой синглтон
источник

MK

Maxim Kulkin in unity3d.ru
А если есть один синглтон, то почему нельзя много?
источник

AP

Alexander P in unity3d.ru
Точка входа в NET тоже выполняется статичным методом. Никто не сказал, что их не должно быть вообще.
источник

AP

Alexander P in unity3d.ru
Maxim Kulkin
А если есть один синглтон, то почему нельзя много?
Потому что это антипаттерн в большинстве кейсов
источник

MK

Maxim Kulkin in unity3d.ru
Alexander P
Потому что это антипаттерн в большинстве кейсов
Хотелось бы понять недостатки
источник

RS

Roma Sality in unity3d.ru
так ок, ты смог вызвать окно таким путем, вызови звуковой контроллер, сейв контроллер, и еще 10 штук, все черз одну точку входа? так она у тебя God manager тогда будет
источник

AP

Alexander P in unity3d.ru
Roma Sality
так ок, ты смог вызвать окно таким путем, вызови звуковой контроллер, сейв контроллер, и еще 10 штук, все черз одну точку входа? так она у тебя God manager тогда будет
Не будет она god manager. Контроллеры тоже имеют вложенность друг в друга.
источник

MK

Maxim Kulkin in unity3d.ru
Roma Sality
так ок, ты смог вызвать окно таким путем, вызови звуковой контроллер, сейв контроллер, и еще 10 штук, все черз одну точку входа? так она у тебя God manager тогда будет
Ну, на самом деле, это завуалированные синглтоны внутри одного... это не God class, потому что логика таки обособлена внутри конкретных экземпляров внутренних менеджеров.. но непонятно, чем это лучше, когда каждый сам по себе синглтон
источник

M

Mulder in unity3d.ru
Alexander P
Не будет она god manager. Контроллеры тоже имеют вложенность друг в друга.
Ну это и есть Сервис Контейнер. Разве нет? )
источник

MK

Maxim Kulkin in unity3d.ru
Я могу понять преимущество одного синглтона - он собирает вместе и настраивает все остальные классы и можно это контроллировать в одном месте.. хотелось бы понять, нужно ли это на практике
источник

PA

Pavel Abdurakhimov in unity3d.ru
Господа и дамы, а почему считается, что синглтоны - плохая практика? Я вот сейчас задумался убрать все синглтоны, потому что код смотрится ужасно, но интересно, чем оно плохо? Я никаких проблем пока с этим не встречал.
источник

PA

Pavel Abdurakhimov in unity3d.ru
Ой, а тут выше как раз обсуждение синглтонов, я только сейчас увидел. Почему это антипаттерн?
источник

PD

Paul Dyatlov in unity3d.ru
Pavel Abdurakhimov
Господа и дамы, а почему считается, что синглтоны - плохая практика? Я вот сейчас задумался убрать все синглтоны, потому что код смотрится ужасно, но интересно, чем оно плохо? Я никаких проблем пока с этим не встречал.
> Я задумался убрать синглтоны потому что код смотрится ужасно
> Чем синглтоны плохи?

И правда
источник