Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Ksar13th
2 / 2 / 0
Регистрация: 14.02.2012
Сообщений: 31
#1

MVP + фрагменты: как грамотно организовать архитектуру?

26.07.2017, 07:37. Просмотров 370. Ответов 4
Метки нет (Все метки)

Всем привет.
Есть приложение, в котором есть базовый фрагмент, от которого наследуется 10-20 новых фрагментов. Отображают все они просто список объектов в RecyclerView. Отличаются лишь названиями вызываемых методов веб-сервиса; обработкой пришедших данных, т.е. перегоном JSON строки в массив объектов; отрисовкой каждого объекта на экране, и событиями при клике по объектам.
Например, есть список людей, кликаем по человеку - открывается его карточка. Есть список машин, кликаем по машине - открывается её карточка. И ещё 10-20 подобных списков.

Перевожу это приложение на MVP. Внедряю Mosby и Retrofit. Пока без RX.
Подскажите, как грамотно это сделать?
Что бы при нужде добавить ещё 5-10 подобных фрагментов приходилось затрачивать минимум усилий и мыслительной работы.
Заранее большое спасибо. Уже второй день не могу заснуть из-за этого.

Добавлено через 14 часов 31 минуту
Судя по тому, что все молчат, вопрос задан некорректно?
Или то, что мне хочется невозможно?
Пишите свои мысли, кто сюда заходит. У кого была подобная задача и как решили?

Суть проста - как упростить себе жизнь, если в приложении много однотипных списков объектов. Мб мне в обще не фрагменты нужны?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.07.2017, 07:37
Ответы с готовыми решениями:

Как применить MVP к ListView(Mosby)
Здравствуйте. Недавно начал изучение MVP, и столкнулся с такой проблемой: не...

Не могу разобраться, как подключать Фрагменты
Решил научится использовать фрагменты, и сразу же наткнулся на проблему (Не...

Как инициализировать фрагменты внутри RecyclerView
Здравствуйте. Как правильно реализовать инициализацию фрагментов внутри...

Как листать фрагменты в ViewPager по кнопке?
Доброго дня. Есть фрагменты, Листаемые в ViewPager'е. Помимо возможности...

Как добавить фрагменты в Tabbed Activity (Android Studio)?
Добрый день. Хочу сделать в Андроид Студио листалку на шаблоне Tabbed Activity....

4
vxg
Модератор
3236 / 2040 / 319
Регистрация: 13.01.2012
Сообщений: 7,898
26.07.2017, 08:03 #2
Ksar13th, наверное надо начать делать и показать либо облака соединенные стрелочками либо скелет кода - на слух хреново воспринимается ваша проблема
0
Ksar13th
2 / 2 / 0
Регистрация: 14.02.2012
Сообщений: 31
26.07.2017, 09:12  [ТС] #3
Верно.
Ок, попробую вот так - картинка во вложении.

Это текущая схема реализации.
Есть FragmentBase, на котором лежит RecyclerView. Фрагмент внутри дёргает Retrofit и запрашивает с сервера JSON массив. Получает его. Превращает его в массив объектов. Этот массив закидывает в адаптер RecyclerView и объекты отрисовываются на экране.
От этого FragmentBase наследуются все остальные 10-15 фрагментов с такой же функцией.
Но в них переопределяется название какой метод веб-сервиса дёргать; во что превращать полученный JSON массив; и какую вьюху брать для каждой строки и что в ней рисовать.
Такая схема позволяет при добавлении нового списка куда либо в приложение делать минимум действий - просто переопределять три процесса: что и откуда получить, во что преобразовать, как нарисовать.

Я сейчас разбираюсь с MVP. Текущая архитектура, которая на картинке, стала казаться больно деревянной. И хочется сделать грамотно. Что можете подсказать?
Теперь суть проблемы стала понятней? Или попробовать объяснить иначе?
0
Миниатюры
MVP + фрагменты: как грамотно организовать архитектуру?  
ILNAR_93
26.07.2017, 09:28
  #4

Не по теме:

Цитата Сообщение от Ksar13th Посмотреть сообщение
Теперь суть проблемы стала понятней?
Мне кажется или тут нету проблемы?

Цитата Сообщение от Ksar13th Посмотреть сообщение
Что бы при нужде добавить ещё 5-10 подобных фрагментов приходилось затрачивать минимум усилий и мыслительной работы.
Можно просто копи - паст.

0
Ksar13th
2 / 2 / 0
Регистрация: 14.02.2012
Сообщений: 31
26.07.2017, 09:34  [ТС] #5
Мне кажется или тут нету проблемы?
Но ведь это не MVP. А я хочу понять как это сделать в виде MVP архитектуры. Да или просто узнать как это делается правильно. По интуиции чувствую, что что-то не так.
Или допустимо что бы фрагменты выбивались из MVP? *Да не, бред какой то*

Можно просто копи - паст.
Сарказм?
0
26.07.2017, 09:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.07.2017, 09:34

View Pager разные фрагменты на страницах, не понимаю как?
помогите догнать куда вставить код из Main'а который отображает разные...

Подскажите как грамотно нарисовать на экране лабиринт
Здравствуйте, так получилось, что мне срочно нужно сделать программу на...

Как грамотно проверить что gps выключили
Приветствую. Получаю location так: location =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru