Presentation is loading. Please wait.

Presentation is loading. Please wait.

MVVM Pattern Mahender Senior Software Engineer United Health Group.

Similar presentations


Presentation on theme: "MVVM Pattern Mahender Senior Software Engineer United Health Group."— Presentation transcript:

1 MVVM Pattern Mahender Senior Software Engineer United Health Group

2 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 : http://Msarangam.wordpress.com

3 Everything in code behind, is not a good idea

4

5 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 Martin Fowler's Presentation Model (PM) pattern

6

7

8

9 View Knows VIEW MODEL VIEW MODEL Knows MODEL BUT VIEWMODEL does not know View

10 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

11 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)

12 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

13 WPF Team : MVVM ToolkitMVVM Toolkit MS Pattern and Practice Team : Composite WPF (Prism)Composite WPF (Prism) Josh Smith. "MVVM Foundation"MVVM Foundation Sacha Barber. "Cinch."Cinch Karl Shifflett. "Ocean"Ocean Laurent Bugnion. "MVVM Light Toolkit"MVVM Light Toolkit Lester Lobo. "CoreMVVM"CoreMVVM Rob Eisenberg. "Caliburn"Caliburn William e Kempf. "Onyx"Onyx Peter O’Hanlon. "GoldLight"GoldLight jbe. "WPF Application Framework (WAF)"WPF Application Framework (WAF) Paul Stovel : MacroModelsMacroModels

14


Download ppt "MVVM Pattern Mahender Senior Software Engineer United Health Group."

Similar presentations


Ads by Google