базовые переменные для работы с сетью, бд туда вынести например? чтобы в каждом репозитории не прописывать их? и храните ли app context в нем? если например надо в преференсы залесть? или обертку пишите и через него общаетесь в репозитории?
По мне абстрактный класс Репозитория не нужен. А в чем проблема с классами по работе с БД, сетью и т.д. Возьмем сеть и библиотеку Retrofit. Вы же все равно будете использовать конкретные интерфейсы. А всякие RestAdapter и прочее остаются в соответствующем даггеровском модуле. Необходимые зависимости Даггером пробрасываете, и все отлично. Вообщем юзайте Даггер, и все будет хорошо =) Context можно пробросить. Для тех же Shared Preferences. С ними да, лучше работать через специальную обертку или адаптер. Так у вас будет все под контролем с shared preferences в одном классе. А то напосоздают имплементации SP, а это все perfomance - не хорошо.
Обсуждают сегодня