Подмодули в viper
TRANSCRIPT
План
• Что из себя представляет Сложный модуль?
• Проблемы сложных модулей
• Способы разделения на подходили
• Подмодули - плюсы и минусы
Проблемы сложных модулей• Нарушается принцип единственной ответственности (SOLID)
• Разнородные данные и функциональность в одном модуле
• Сложная логика работы
• Затруднено тестирование
• Невозможность переиспользования
• Затруднено изменение функциональности и конфигурации
Способы разделения на подмодули
Контейнер Scroll View контейнер
Модули секций
Ячейки модули
View модули
Контейнер
Модуль
ViewController
Container View
PRESENTER
INTERACTOR
ROUTER
Подмодуль
ViewController
VIEWPRESENTER
INTERACTOR
ROUTER
Когда помогаютУменьшает сложность основного модуля
Легкое переиспользование
подмодулей
Упрощает добавление новой
функциональности
Упрощает тестирование
Когда мешают
Значительно увеличивает объем
кода
Усложняет логику
Усложняет дебаг
Тяжело поддерживать