Сразу к делу: архитектурный шаблон MVP

May 04 2023
В рамках моей индивидуальной программы развития (IDP) я посвятил себя изучению теории, лежащей в основе знаний, которые я приобрел на протяжении всей своей карьеры iOS-разработчика. В поисках теоретической основы я нашел потрясающую книгу на LinkedIn, которой поделился коллега из той же группы разработчиков Swift, к которой я принадлежу.

В рамках моей индивидуальной программы развития (IDP) я посвятил себя изучению теории, лежащей в основе знаний, которые я приобрел на протяжении всей своей карьеры iOS-разработчика. В поисках теоретической основы я нашел потрясающую книгу на LinkedIn, которой поделился коллега из той же группы разработчиков Swift, к которой я принадлежу.

В этой статье я продолжаю исследовать тему ранее опубликованной статьи об архитектурном паттерне MVC. Несмотря на схожесть содержания, стоит ознакомиться с ней, чтобы получить подробную оценку книги и моего учебного пути.

Сразу к делу: архитектурный шаблон MVC

Лучший игрок

Шаблон Model-View-Presenter (MVP) представляет собой набор из трех шаблонов проектирования, которые четко определяют роль каждого компонента в программном проекте. Этими компонентами являются модель, представление и презентатор, и каждый из них имеет определенные правила использования и контекст, чтобы обеспечить его эксклюзивность и функциональность в рамках проекта.

Модель — это компонент, отвечающий за бизнес-логику, доступ, обработку и хранение данных в приложении. Он включает в себя классы, связанные с сохранением данных, взаимодействием приложений и анализом внешней информации. Важно подчеркнуть, что модель взаимодействует с представлением не напрямую, а через презентатора.

В чистой архитектуре модель может присутствовать на нескольких уровнях, таких как варианты использования (домен), репозитории (данные) и источники данных (сеть и хранилище). В общем, модель состоит из объектов, выполняющих анализ информации, расширений, констант и вспомогательных классов, и эти объекты могут взаимодействовать друг с другом.

С другой стороны, представление формируется компонентами интерфейса, видимыми пользователю, такими как классы, включенные в библиотеку UIKit. Он отвечает за отображение данных из Модели, хотя напрямую с ней не связан (эту связь осуществляет Презентатор).

Презентатор играет роль посредника в общении между Моделью и Представлением. Он получает и интерпретирует действия пользователя в представлении, выполняя необходимые обновления в модели. Когда данные модели претерпевают изменения, презентатор также соответствующим образом обновляет представление. Это двунаправленное взаимодействие между моделью и представлением является одним из основных аспектов шаблона MVP.

Выполнение

Впитав знания, полученные в результате прочтения рекомендованной книги и применения методов разработки, которые я использую в своих проектах, я создал модель реализации, которая соответствует моей реальности. В этой статье я поделюсь конкретным примером реализации Presenter, выделив методы и ресурсы, которые я использовал.

Спасибо, что дочитали до этого места!

Если вы хотите внести свой вклад, чтобы я мог продолжать создавать больше технического контента, не стесняйтесь купить мне кофе ☕️ через платформу « Купи мне кофе» .

Ваша поддержка необходима для поддержания моей работы и внесения вклада в сообщество разработчиков.