Size: a a a

2020 March 16

AS

Anton Smetanin in unity3d.ru
Я правильно понимаю, что у тебя типа есть некая фабрика, где хранится список префабов, и когда тебе нужно создать вьюху, ты проходишь по всем префабам и спрашиваешь у них, а твоя ли это модель?
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Проверка на null не главное)
Кароче вот, тот который  ранеее скидывал  я использую здесь...  вся магия используется в InitRequriments https://pastebin.com/Bw0fDe0y
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Я правильно понимаю, что у тебя типа есть некая фабрика, где хранится список префабов, и когда тебе нужно создать вьюху, ты проходишь по всем префабам и спрашиваешь у них, а твоя ли это модель?
Да
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Я правильно понимаю, что у тебя типа есть некая фабрика, где хранится список префабов, и когда тебе нужно создать вьюху, ты проходишь по всем префабам и спрашиваешь у них, а твоя ли это модель?
Я хотел избавиться от switch образом
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Да, давай
Вот абстрактный класс вьюшки, от которого все остальные вьюшки  наследуются  https://pastebin.com/RMd3XpT7
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Да, давай
А вот конкретная реализация https://pastebin.com/yYDkpdjk
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Да, давай
реализацию IRequirement скинуть?
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Да, давай
или и так уже понятно ?
источник

AS

Anton Smetanin in unity3d.ru
Не, я понял идею
источник

AS

Anton Smetanin in unity3d.ru
Ну
источник

AS

Anton Smetanin in unity3d.ru
По мне так свитч был бы лучше)
источник

AS

Anton Smetanin in unity3d.ru
Но ладно)
источник

AS

Anton Smetanin in unity3d.ru
Чисто по коду:
Класс RequrimenViewPrefabProvider у тебя можно заменить тупо ссылкой на GameObject. У него никакого своего состояния нет
источник

AS

Anton Smetanin in unity3d.ru
источник

AS

Anton Smetanin in unity3d.ru
Типа так
источник

M

Mikhail in unity3d.ru
Anton Smetanin
По мне так свитч был бы лучше)
Может быть. Я экспериментировал. Я вообще фабрику в первые сознательно решил реализовать. Паттерны потихоньку учу. Я ж кроме синглтона ничего не знаю =)7
источник

AS

Anton Smetanin in unity3d.ru
myRequirement = isMy ? (T)requirement : (T)new object();


Вот эта штука у тебя упадёт, когда isMy не выполнится
источник

AS

Anton Smetanin in unity3d.ru
Ты создаёшь новый object и кастишь его к T, которым он вряд ли является
источник

M

Mikhail in unity3d.ru
Anton Smetanin
Чисто по коду:
Класс RequrimenViewPrefabProvider у тебя можно заменить тупо ссылкой на GameObject. У него никакого своего состояния нет
Да, я по началу что-то хотел там делать, когда идея появилась, но когда реализовывал понял что он лишним оказался, ну я не стал переделывать.
источник

M

Mikhail in unity3d.ru
Anton Smetanin
myRequirement = isMy ? (T)requirement : (T)new object();


Вот эта штука у тебя упадёт, когда isMy не выполнится
Это, да, это про то я что говорил, что код пересмотрел и кучу косяков заметил
источник