Size: a a a

iOS Developers — русскоговорящее сообщество

2021 April 19

Д

Денис in iOS Developers — русскоговорящее сообщество
Кидай
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
Теперь у тебя ConcreteVC имеет нормальную типизацию для associatedType

и код уходит в экстеншен протокола, по нормальному, так как НОРМАЛЬНО ТИПИЗИРОВАНО
источник

mm

maxim mironow in iOS Developers — русскоговорящее сообщество
https://www.youtube.com/watch?v=ILiBXYscsyY как-то же работало (НАВЕРНО!)
источник

Д

Денис in iOS Developers — русскоговорящее сообщество
Ну это могло бы быть решением (технически), если бы сториборды нормально поддерживали контроллеры-дженерики
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
ну не знаю чем мой пример отличается от того что было раньше но вот
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
Вам ехать или шашечки? 😄

У тебя DI через сториборды?
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
По сути ты сделал тож самое – типизировал по нормальному.
источник

DN

Danila Nikonets in iOS Developers — русскоговорящее сообщество
чет не нахожу такого
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
ну так и было вот тут. в чем проблема то?
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
А не дженерик дженериком погоняешь
источник

Д

Денис in iOS Developers — русскоговорящее сообщество
так а при чем тут DI. Если верстка идет в сторибордах, то как ты укажешь тип VC-дженерика в сториборде?
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
Его пугает зависимость VC от конкретной VM

Но не пугает зависимость VC от сториборда
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
Так у тебя тогда будет какой-то определённый VC
источник

Д

Денис in iOS Developers — русскоговорящее сообщество
ну да, тут тоже проперти viewModel является конечным конкретным типом, а не протоколом
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
А зачем указывать тип дженерика в сториборде? о_О
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
а понял
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
ну так надо указывать метод foo() который внутри вашего extension, а то получается foo как бы есть всегда, а extension который он дергает только если T: Printable
источник

Д

Денис in iOS Developers — русскоговорящее сообщество
А кто создает VC в случае верстки через сториборды? Класс сториборда и является фабрикой, ему нужен тип VM, чтобы зарезолвить
источник

В

Вовка in iOS Developers — русскоговорящее сообщество
Понятно:

Хочешь 1 VC
У него вьюмодель под протоколом

А у протокола есть метод в экстеншоне, который никак не поддерживается протоколом.

Т.е. добавляешь какую-то свою логику, делая зависимость от конкретной реализации.

Но хочешь избежать зависимости от конкретной реализации.

Всё так?
источник