Старайтесь придерживаться
SOLID и ваш код будет модульным, расширяемым и тестируемым.
Так же будет отлично если Вы будете разбивать приложение на модули(слои). Например, если Вы оформите всю работу с сетевыми запросами в отдельный модуль (включающий работу допустим с Retrofit), и предоставите интерфейсы для взаимодействия с этим модулем, то в дальнейшем сможете легко протестировать его. А если ваш код поддается тестированию, то значит Ваш код будет легко расширяться. Старайтесь создавать слабосвязанную архитектуру приложения.