Задать вопрос

Как реализовать модель в MVP? Правильно ли я понимаю данный шаблон проектирования?

Собственно по началу всё понятно - мы имеем 3 части - model, present, view, но по реализации каждого из них в андроид студии у меня имеются вопросы.

На сколько я понял из прочитанного ранее
  1. Все layout'ы заменяются фрагментами, таким образом мы имеем лишь 1 layout с 1 элементом - FrameLayout (это самое необычное для меня, понимаю логически, но все равно кажется, что что-то тут не так)
  2. View
    • MainActivity класс с методом замены фрагмента
    • Класс для каждого фрагмента с начальными установками типа onClickListner'ов в onCreate'e и методами типа makeToast

  3. Present
    • На каждый фрагмент по present'у
    • Могут ли в этой части быть дополнительные классы? Например класс, отвечающий за работу с пользовательскими данными?

  4. Model
    • Я немного не понимаю как его реализовать так, что бы данные были доступны во всех present'ах? Возможно я неправильно понимаю то, как эта часть должна быть реализована и модель не должна ничего хранить в себе, а лишь получать данные из других мест (SharedPreferences, SQLite и т.д.)? В таком случае в каждом презенте надо просто создавать новую модель?

  • Вопрос задан
  • 989 просмотров
Подписаться 5 Оценить 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Android-разработчик с нуля
    14 месяцев
    Далее
  • Яндекс Практикум
    Android-разработчик
    12 месяцев
    Далее
  • Академия Eduson
    Android-разработчик
    6 месяцев
    Далее
Решения вопроса 1
VGrabko
@VGrabko
Golang, Php, Js
Всё верно. Present может обратится к другому классу запросто но лучше так не делать. По сути Present аналог контроллера в MVC только с доп. абстракциями
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы