Git Hub
коротко

iOS: VIPER архитектура

26 декабря 2016, 13:44

Сделай настолько просто, насколько это возможно, но не проще.

(с)Альберт Эйнштейн

признаки хорошей архитектуры:

  1. сбалансированное распределение обязанностей между сущностями с жесткими ролями;
  2. тестируемость. Обычно вытекает из первого признака (без паники, это осуществимо при соответствующей архитектуре);
  3. простота использования и низкая стоимость обслуживания.

VIPER

Архитектура VIPER

Архитектура VIPER

Разделение обязанностей — это очень хорошо

View: отвечает за отображение данных на экране и оповещает Presenter о действиях
пользователя. Пассивен, сам никогда не запрашивает данные, только получает их от
презентера.

Interactor: содержит всю бизнес-логику, необходимую для работы текущего модуля.

Presenter: получает от View информацию о действиях пользователя и преображает ее
в запросы к Router’у, Interactor’у, а также получает данные от Interactor’a,
подготавливает их и отправляет View для отображения.

Entity: объекты модели, не содержащие никакой бизнес-логики.

Router: отвечает за навигацию между модулями.

Книга VIPER

Поделиться
Запинить
Популярное