Silverlight Model-View-ViewModel-Presenter

Terms Defined

  • Model: C# Classes that model the business domain
  • View: XAML Markup that contains declarative rendering instructions and mappings to a model.
  • Presenter: C# Classes that contain imperative presentation logic and event targets.
  • View Model: C# classes that model the visual domain

M-V-P (em-vee-pee)

Strengths: Provides clear separation of presentation logic and event handling from visual rendering instructions. Encapsulates presnetation logic within highly testable containers.

Weaknesses: Lacks a definite contract between the logic and the visual representation.

M-V-VM (em-vum)

Strengths: Provides a definite contract between the logic and the visual representation.

Weaknesses: Lacks clear separation between presentation logic and event handling from visual domain model. Presentation logic often not in highly testable containers.

M-V-VM-P (em-vump)

The M-V-VM-P pattern combines these two patterns to produce an optimal balance between separation of visuals and logic and encapsulating imperative presentation logic within highly testable containers.

03

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s