jargon

Comparison

Model-view-viewmodelvsPresentation model

Model-view-viewmodel

you changed a property on the viewmodel and the label updated, and no code you wrote connected the two.

A presentation model plus declarative data binding: the view binds to properties and commands on a viewmodel, and the framework propagates changes both ways. It removes the per-field wiring that MVP requires and moves the cost into a binding layer whose failures are silent — a misspelled binding path that simply shows nothing. It requires framework support to exist at all, which is the practical difference from presentation model.

Full entry →

Presentation model

there is an object holding the state of the screen — what is selected, what is disabled — and it is not the domain object.

An object that represents the state and behaviour of a view independently of any UI framework, which the view then reflects. It differs from MVP in direction: the presenter pushes into a passive view, while a presentation model is pulled from or bound to. It is the direct ancestor of MVVM, whose only real addition is that the binding is automatic.

Full entry →

Related comparisons