HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This eBook includes the following formats, accessible from your Account page after purchase:
EPUB The open industry format known for its reflowable content and usability on supported mobile devices.
PDF The popular standard, used most often with the free Acrobat® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
Using the Model View View-Model (MVVM) pattern, .NET developers can create more robust and powerful Silverlight and WPF applications, get to market more rapidly, and simplify both maintenance and upgrades. In MVVM Unleashed, two-time Microsoft MVP Mike Brown demonstrates how to use MVVM to overcome many of the most difficult challenges traditionally associated with Silverlight and WPF development. Brown presents realistic code samples illuminating each "pain point" and showing how MVVM and its supporting patterns can be used to address them. This book goes far beyond theory, presenting useful advice and code derived from the author's four years' experience building production WPF and Silverlight applications. Brown shows how to leverage MVVM's potential benefits for maintainability, testability, "blendability," and portability. In addition, he thoroughly covers closely-related "supporting patterns" for efficiently structuring applications - including patterns that have evolved from the practice of minimizing code-behind. MVVM Unleashed will be valuable to every Silverlight and WPF developer, including the growing number of developers now building Windows Phone 7 apps.
Part I. Why MVVM?
1. Principles of Object Oriented Development
2. An Introduction to MVVM
3. Maintainability and MVVM
4. Testability and MVVM
5. Blendability and MVVM
6. Portability and MVVM
Part III. Support: Making MVVM Shine
7. Zero Code-Behind Debate
8. Delegating Command to the View Model
9. Extending XAML with Attached Behaviors
10. Communication between View Models
11. Removing Dependencies with Inversion of Control
12. Simplifying Data Access with Repositories and Unit of Work
Part IV. Advanced Patterns: Moving Beyond Utility
13. View Model Base and View Model Property
14. Navigation
15. The Coup de Grâce: UI Metadata/Dynamic UI