I'm trying to understand whether there's a difference between the Model-View-Presenter and Model-View-Adapter patterns, and--if so--what that difference is. I haven't found any online resources that compare/contrast them, so I'm not even sure whether they're actually distinct.
The descriptions I've found of them sound essentially identical to me. From what I've gathered, in both cases the control flow is basically:
View <-- Adapter/Presenter --> Model
(where Adapter/Presenter can also respond to events from View and Model)
View: the UI
Adapter/Presenter: main logic; mediator between the UI and the data model
Model: the data model
The Adapter/Presenter "knows about" the View and the Model, but the View and the Model don't know about anyone other than themselves.
I expect that there's a subtlety that I'm completely missing here. What is it?