- Прокачать умение делать архитектурный рефакторинг всего приложения.
- Научится внедрять DI, понять плюсы подхода. Можно использовать в качестве основы реализованное домашнее задание по прошлому занятию.
- Выполнить рефакторинг приложения до MVVM. При реализации в классическом iOS приложении (не SwiftUI) использовать Key-Value подписки или через Notification Center. При реализации SwiftUI использовать стандартные механизмы Combine.
- Модуляризировать свое приложение одним из известным способом. Вынести UI компоненты в отдельный модуль и импортить его в местах использования.
- Создать ServiceLocator (можно на дженериках) 4 Перевести существующие сервисы на него Добавить инжектинг в переменные инстанса класса, чтобы в каждома классе можно было видеть зависимости не скролля файл. Выделить уровень Core сервисов (сеть, парсинг, хранение). Core и другие сервисы вынести в модуль.