mvvm pattern n.
Skip this Video
Download Presentation
MVVM Pattern

Loading in 2 Seconds...

play fullscreen
1 / 14

MVVM Pattern - PowerPoint PPT Presentation

  • Uploaded on

MVVM Pattern. Mahender Senior Software Engineer United Health Group. Mahender Sarangam.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'MVVM Pattern' - solana

Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
mvvm pattern

MVVM Pattern


Senior Software Engineer

United Health Group

mahender sarangam
Mahender Sarangam
  • Having 5 years of experience on .NET Technologies. Working as a Senior Software Engineer in United Health Group (UHG India Information Service Ltd.). Worked with Big Firms like Deloitte Consulting & Wipro Technology.
  • Got Technical Acquaintance on Technologies like C#, ASP.NET,AJAX, LINQ, Silverlight, WPF,WCF ,SQL Server, Team Foundation Server(TFS) and SharePoint Technology.
  • MCTS Certified in Web Technologies.
  • Blog :
why do need pattern
Why Do need Pattern

Everything in code behind, is not a good idea

why do need pattern1
Why Do need Pattern
  • Basic Motivation of separation pattern
    • Removing logic from Code behind
    • Interchanging UI screens
    • Create Unit test case foe logic and UI
    • Developers and Designers can work parallel.
    • Model never needs to be changed to support changes to the view
    • No duplicated code to update views
  • So what is MVVM ?
    • Its variation of MVC pattern
    • John Gossman from WPF team
    • Resources from external assemblies
    • Martin Fowler's Presentation Model (PM) pattern
  • View Knows VIEW MODEL
  • BUT VIEWMODEL does not know View


View Model


  • Represents the user interface that the user will see.
  • Can be a user control or Data Template
  • Keep the view as simple as possible.
  • Uses Binding to “subscribe” to the ViewModel
  • Interprets business data and state of ViewModel to the human
  • Nothing but Presentation - XAML
  • No or minimal code-behind
view model
View Model
  • An abstraction of View
  • Connector between View and Model
  • Keep View State, Value Conversion
  • No strong or weak (via Interface) reference of View
  • Make VM as testable as possible (e.g. no call to Singleton class)
  • No Control related Stuff in VM
  • Provides data to and from the View
  • Responds to both the View and the Model
  • Informs the View of changes in the data
  • Reusable (at least much more than code behind a form)
  • Can be Data Model, DTO, POCO, auto-generated proxy of domain class and UI Model based on how you want to have the separation between Domain Service and Presentation Layer
  • No reference to View Model
  • Typical class that covers a database
  • Could be a WCF Service and its client reference
supporting libraires and framework
SupportingLibraires and Framework
  • WPF Team : MVVM Toolkit
  • MS Pattern and Practice Team : Composite WPF (Prism)
  • Josh Smith. "MVVM Foundation"
  • Sacha Barber. "Cinch."
  • Karl Shifflett. "Ocean"
  • Laurent Bugnion. "MVVM Light Toolkit"
  • Lester Lobo. "CoreMVVM"
  • Rob Eisenberg. "Caliburn"
  • William e Kempf. "Onyx"
  • Peter O’Hanlon. "GoldLight"
  • jbe. "WPF Application Framework (WAF)"
  • Paul Stovel : MacroModels