This document discusses Xamarin Forms, MVVM design pattern, and testing. It covers how Xamarin Forms allows building cross-platform mobile apps using C# and XAML that are natively backed. It also describes the MVVM pattern which separates presentation and logic for testability using bindings, properties, collections and commands. Events like PropertyChanged, CollectionChanged, and CanExecuteChanged are used to notify views of changes.
21. MVVM(Model-View-ViewModel)
• In 2005, John Gossman(Microsoft)
• A Variation of MVC
• Separation of Presentation and Presentation Logic
• 2-way Binding
• Testability
• WPF, Silverlight, Xamarin Forms, AngularJS, EmberJS, KnockoutJS, RoboBinding
• Introduction to Model/View/ViewModel pattern for building WPF apps
• WPF Apps With The Model-View-ViewModel Design Pattern
25. Unit Testing
Pros
• Cheap
• Finds problems early
• Living Documentation
• As a Design Element
Cons
• Not catch integration errors
• Not catch system-level errors
• Can’t write for user interfaces