Different interpretations of MVVM

There are two different interpretations of MVVM, the “purist” way where the model is protected, or the “shortcut” way where the view model only provides the instance of the model and the view then binds directly to the model.

Shortcut interpretation

This is what most people do. The view model implements the model, and then provides the model to the view. The view then binds directly to the model.

 Advantages

Disadvantages

Purist interpretation

This is what the developers of Catel strongly believe in. It requires a bit more code, but gives great freedom and control and protection of the model because all bindings go through the view model.

 Advantages

Disadvantages

 Needs a bit more code (but thanks to code snippets and the Expose attribute, this is not a big disadvantage)


Have a question about Catel? Use StackOverflow with the Catel tag!


Discussion