344.61K
Category: programmingprogramming

Pattern Model-View-Presenter

1.

Pattern
Model-View-Presenter

2.

Паттерн проектирования - архитектурная
конструкция, представляющая собой
решение проблемы проектирования в
рамках некоторого часто возникающего
контекста.

3.

Плюсы
● Снижение сложности разработки за счёт готовых
абстракций для решения множества проблем
● Облегчает коммуникацию между разработчиками

4.

MVC
Model-View-Controller
Идея
Разделение данных
приложения, и управляющей
логики на три отдельных
компонента: модель,
представление и контроллер —
таким образом, что
модификация каждого
компонента может
осуществляться независимо

5.

Model
Хранит
Данные
Информацию
Состояние

6.

Model
Моделирует иерархию бизнес-объектов
(объекты, списки объектов, свойства объектов,
связи между объектами)

7.

Model
Модель независима от остальных частей и
ничего не знает об их существовании, что
позволяет менять и Контроллер и
Представление модели, не трогая саму Модель.

8.

Model
Оповещает Представление и Контроллер об
изменениях

9.

View
Отвечает за отображение пользовательского
интерфейса.
Отображает текущее состояние модели.
Представление имеет доступ к Модели и может
брать из нее данные, однако доступ только на
чтение.

10.

View
Оповещает контроллер о действиях пользователя

11.

Controller
Описывает логику взаимодействия приложения с
пользователем

12.

Controller
Интерпретирует действия пользователя,
оповещая модель о необходимости изменений

13.

Controller
Сохраняет и изменяет модель

14.

Плюсы такого разделения
Декомпозиция всего кода
Поддержка
Рефакторинг
Легко исправлять баги

15.

Model-View-Presenter

16.

MVP
Model-View-Presenter
Исключает связь
между Моделью и
Представлением

17.

View
Отвечает за отображение пользовательского интерфейса
Оповещает Представителя о действиях пользователя

18.

Model
Реализует Бизнес-логику

19.

Presenter
Слушает события представления
Хранит состояние представления
Содержит управляющий код
Управляет Моделью и Представлением
English     Русский Rules