Давайте разбираться, начиная с MVC.
MVC — это модель-представление-контроллер. Чтобы уменьшить связанность и сделать разные части программы более независимыми, мы разделили код на эти три слоя.
[|Рисунок 1: Схема взаимодействия в архитектуре MVC|]
Как видно из схемы, слой View инициирует операцию, которая затем обрабатывается слоем бизнес-логики (моделью). После этого модель обновляет данные, а затем уведомляет об этом слой View для отображения изменений. Однако в процессе использования выяснилось, что зависимости между слоями View и Model всё ещё слишком сильны. Поэтому постепенно появилась архитектура MVP.
В ней Presenter заменил Controller и взял на себя не только обработку логики, но и контроль за обновлением View, а также отслеживание изменений в данных модели. Это позволило сделать слой View тонким и пассивным, без собственной логики и необходимости активно отслеживать данные. Такой подход получил название «пассивное представление».
[|Рисунок 2: Схема взаимодействия в архитектуре MVP|]
MVVM по сути аналогична MVP, за исключением того, что здесь используется технология Data Binding. Изменения в View автоматически отражаются в ViewModel, а изменения в ViewModel автоматически отображаются в View. Таким образом, разработчику не нужно обрабатывать события и обновлять View вручную — фреймворк делает это автоматически.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )