Еще раз, вопрос, связанный с MVC. Несколько дней назад я начал читать Руководство по основам Cocoa от Apple, в котором Apple объясняет их реализацию MVC.
В главе MVC как составной шаблон проектирования (ссылка), они сравнивают две версии MVC:
-
Старая/традиционная версия SmallTalk:
-
Текущая версия, определенная Apple:
Они описывают эту текущую модель следующим образом:
Объект контроллера в этом составном шаблоне проектирования включает Шаблон посредника, а также шаблон стратегии; он опосредует поток данных между объектами модели и представления в обоих направлениях. Изменения в состояние модели передаются для просмотра объектов через контроллеробъектов приложения.
Традиционный шаблон выглядит как MVC, ничего плохого. Но имя их нынешнего шаблона смущает меня. Насколько мне известно, это можно рассматривать как обычный MVP, потому что контроллер всегда, кажется, выступает посредником между View и Model.
Я совершенно неправ, я неправильно понимаю MVC или MVP? Или Apple просто использует неправильное имя для этого шаблона? И что еще более важно, ПОЧЕМУ этот текущий шаблон называется MVC?