Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Базовый модуль в VIPER. #96

Open
Tequilag opened this issue Aug 8, 2021 · 0 comments
Open

Базовый модуль в VIPER. #96

Tequilag opened this issue Aug 8, 2021 · 0 comments

Comments

@Tequilag
Copy link

Tequilag commented Aug 8, 2021

Всем привет. Я стал часто сталкиваться с такой задачей, что нужно переиспользовать какую-то логику на нескольких экранах, то есть модулях. Например, внизу показывается небольшая группа пользователей, которая
грузится из интернета, на обновления которых пользователь может подписаться. Плюс на любом экране нужно показывать сообщение в виде view'хи, в которой отображается статус об отсутствии интернета, под navigation bar'ом. Это такие задачи, которые затрагивают сразу несколько слоев VIPER модуля. То есть копировать весь код в каждый модуль ведет к тому, что если эта общая логика меняется, то надо вносить изменения во всех местах. Делать расширения через базовые протоколы накладывает ограничение на изменение состояния модуля, то есть можно делать какие-то простые действия в духе открыть какой-то экран, показать alert с сообщением, но грузить данные из интернета, обновлять массив ячеек, потом обновлять UI, для этого расширение уже нельзя использовать.
Поделитесь, пожалуйста, как вы решаете подобные проблемы в своих проектах в плане переиспользования комплексной логики?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant