Я видел разные способы использования архитектуры MVVM в iOS, и у меня есть несколько вопросов по этому поводу:
1 Как говорится в букве «D» в «SOLID», абстракции зависят не от точных типов. Но если у меня есть простой viewController (VC), должен ли я использовать этот подход, если у меня есть простой VC с простой viewModel (VM), которая инициализирована в viewDidLoad VC? Является ли этот подход хорошим, несмотря на стандартный код, я должен написать протокол для выполнения буквы "D" в "SOLID"?
2 Если мы посмотрим на rootViewController, следует ли использовать инъекцию зависимостей для нашей viewModel через свойство из appDelegate, или можно инстанцировать его внутри viewDidLoad, чтобы не было внедрения зависимостей?
3 Иногда я вижу, что делегирование используется для привязки данных, но если я вместо этого использую Бокс, лучше ли это? (Я знаю о реактивном программировании, но хочу выбрать между этими двумя)?
Спасибо!