Technologies

MVP

MVP (Model-View-Presenter) — патерн розробки інтерфейсу користувача. Шаблон MVP — версія класичного MVC з трохи зміненим підходом, яка найчастіше використовується в розробці додатків. Presenter, який замінює Controller менш пов’язаний із моделлю і працює, як функціональний прошарок.

 

Шаблон MVP, як і всі інші, створений для того, щоби розробка та тестування програми проходили швидше та простіше.

 

Абревіатура MVP використовується також для позначення Minimal Viable Product (мінімально життєздатного продукту) — першої, тестової версії програми або сайту. Її обов’язково створюють для стартапів, щоби протестувати гіпотези та перевірити життєздатність ідеї. Для «звичайних» проєктів, наприклад, інтернет-магазинів, теж спочатку створюється MVP, для тих же цілей і щоби відразу почати продавати і просуватися, поступово розширюючи функціонал.

Як працює MVP
01
01
Model

Модель — бізнес-логіка програми, куди входить база даних, і все інше, що потрібно технічної реалізації всіх функцій. Тут проводяться обчислення.

02
02
View

Вид — інтерфейс користувача, те з чим він взаємодіятиме в додатку.

03
03
Presenter

Представник — прошарок між моделлю і виглядом, відповідальний за обмін інформацією, який потрібен для роботи програми.

У MVP Вид створює інтерфейс і підтягує дані з моделі. Як тільки користувач робить будь-яку дію, View передає це, як подію, у Presenter. Представник може сам обробити дані або одразу передати їх у модель. Model реагує виконанням відповідних операцій і віддає назад Представнику. Presenter передає оновлену Модель у View і все починається спочатку.

Якщо в класичному MVC модель безпосередньо спілкується з видом, то тут використовується посередник. Ось і вся різниця.

Чому розробники використовують MVP
Зручний поділ

Усі архітектури ПЗ призначені для того, щоби спростити та впорядкувати спільну розробку. Ви зможете одночасно задіяти більше фахівців, які займатимуться окремими частинами програми. Водночас наявність шаблону гарантує чистоту та структурованість коду, що знижує кількість помилок та спрощує тестування.

Перевірка

Головна особливість MVP — наявність прошарку Presenter. Те, що дані передаються через Посередника, не ускладнює код, а навпаки, сприяє його стабільності. Presenter перевіряє стан та логіку Виду, що захищає програму від критичних збоїв із випадкових причин. Крім того, ще на етапі тестування він допоможе швидше знаходити вузькі місця, а сама його наявність забезпечує простоту розв’язання виявлених проблем.

Повторюваність

Інтерфейс IView краще за той, що використовується в класичному MVC тим, що може повторно використовувати бізнес-логіку, якщо Модель не змінювалася. Це можливо завдяки жорсткому відділенню частин програми та гнучкому зв’язку через Presenter. Ця особливість дає змогу додатку бути менш вимогливим до ресурсів та більш чуйним.

Висновок

Ваші розробники будуть знати, який шаблон проєктування краще для проєкту, як тільки ви розкажете їм, що має робити ваш додаток. MVP — одна з базових архітектур програм, яку можна використовувати для проєктів будь-якого масштабу. У ній є все необхідне для того, щоби спростити розробку та тестування, а також підвищити стабільність та швидкість роботи проєкту. Її використовують для створення мобільних програм, як аналог MVC для сайтів і вебдодатків.

Розробка вебсайтів
Розробка вебсайтів

Бізнес знає свої потреби, а ми — як їх реалізувати.

Створюємо і розробляємо стійкі корпоративні сайти та жваві промо-лендинги. Розробляємо web сервіси. Наші продукти витримують величезне навантаження та надійно слугують клієнтам.