MVVM模式深入探索:WPF与Silverlight应用开发

需积分: 16 3 下载量 122 浏览量 更新于2024-07-24 收藏 4.17MB PDF 举报
"ProWPFandSilverlightMVVM.pdf" 是一本英文原版书籍,专注于介绍Windows Presentation Foundation (WPF) 和 Silverlight 平台上的Model-View-ViewModel (MVVM) 设计模式。本书由Gary McLean Hall撰写,旨在帮助开发者利用MVVM模式创建高效、可测试和易于维护的代码。 MVVM(Model-View-ViewModel)是一种软件设计模式,广泛应用于WPF和Silverlight这样的用户界面(UI)开发框架中。该模式将应用程序的UI逻辑分离到三个不同的组件:模型(Model)、视图(View)和视图模型(ViewModel)。这种分离使得代码更易于管理和测试,同时促进了数据绑定和依赖注入等技术的应用。 1. **模型(Model)**:这是应用程序的核心部分,包含了业务逻辑和数据处理。模型对象通常与数据库或其他数据源交互,负责数据的获取、存储和验证。它们对视图和视图模型是透明的,只关注数据的管理。 2. **视图(View)**:视图是用户看到和交互的界面部分,如窗口、控件和布局。在WPF和Silverlight中,视图通常是XAML文件定义的,通过数据绑定与视图模型进行通信,更新或响应用户输入。 3. **视图模型(ViewModel)**:作为模型和视图之间的桥梁,视图模型提供了一组属性和命令,这些属性和命令被视图绑定以显示和操作数据。视图模型不直接与视图交互,而是通过通知机制(如.NET Framework中的INotifyPropertyChanged接口)来通知视图数据的变化。 书中可能涵盖了以下主题: - MVVM模式的基本概念和工作原理。 - 如何在WPF和Silverlight项目中实现MVVM架构。 - 数据绑定的深入探讨,包括双向绑定、依赖属性和数据上下文。 - 视图模型的设计原则,如命令的实现(ICommand接口和 RelayCommand 类)。 - 使用依赖注入容器提高代码可测试性和可扩展性。 - 测试MVVM应用程序的策略,包括单元测试和集成测试。 - 高级话题,如跨视图模型通信、路由命令和动态加载视图。 这本书对于希望提升WPF和Silverlight应用开发技能,特别是想掌握MVVM模式的开发者来说,是一份宝贵的资源。通过学习,读者能够构建出更加灵活、可维护的用户界面,同时也能更好地理解和利用这两个平台提供的强大功能。
2012-04-27 上传
Pro WPF Silverlight MVVM This book was conceived from a need to explain the MVVM pattern and how it helps structure WPF and Silverlight applications. I had worked on a number of projects where these technologies were used but general best practices were ignored because no one had formally explained the MVVM pattern and how it compared to other patterns such MVP and MVC. In Chapter 1, WPF and Silverlight will be explored in some detail and their respective features highlighted. Chapter 2 introduces the foundation of the MVVM pattern: the databinding model that eclipses the equivalent functionality of Windows Forms or ASP.NET. Chapter 3 explains why the model and the view must be separated in an application and provides various tips and tricks that can help achieve a strict separation of concerns. Chapter 4 introduces the ViewModel that sits between the model and view layers and mediates between the two. Chapter 5 discusses commands and events, weighing up the pros and cons of each. Chapter 6 examines various options for implementing validation into an application. Chapter 7 explores the best side effects of the separation of concerns achieved through MVVM: testability and unit testing. Chapter 8 outlines how to implement a Data Access Layer into a Silverlight or WPF application and how the ViewModel can interact with this layer. Chapter 9 explains how to serialize an object graph using WPF and MVVM, as well as exploring how WPF and Silverlight applications can be extended. Chapter 10 ends the book with a sample application that ties together many of the features covered along the way.
2012-09-18 上传
Book Description Eliminate unnecessary code by taking advantage of the MVVM pattern in Silverlight and WPF using this book and eBook - less code, fewer bugs Build an enterprise application using Silverlight and WPF, taking advantage of the powerful MVVM pattern, with this book and e-book Discover the evolution of presentation patterns-by example-and see the benefits of MVVM in the context of the larger picture of presentation patterns Customize the MVVM pattern for your projects needs by comparing the various implementation styles In Detail MVVM (Model View View Model) is a Microsoft best practices pattern for working in WPF and Silverlight that is highly recommended by both Microsoft and industry experts alike. This book will look at the reasons for the pattern still being slow to become an industry standard, addressing the pain points of MVVM. It will help Silverlight and WPF programmers get up and running quickly with this useful pattern. MVVM Survival Guide for Enterprise Architectures in Silverlight and WPF will help you to choose the best MVVM approach for your project while giving you the tools, techniques, and confidence that you will need to succeed. Implementing MVVM can be a challenge, and this book will walk you through the main issues you will come across when using the pattern in real world enterprise applications. This book will help you to improve your WPF and Silverlight application design, allowing you to tackle the many challenges in creating presentation architectures for enterprise applications. You will be given examples that show the strengths and weaknesses of each of the major patterns. The book then dives into a full 3 tier enterprise implementation of MVVM and takes you through the various options available and trade-offs for each approach. During your journey you will see how to satisfy all the demands of modern WPF and Silverlight enterprise applications including scalability, testability, extensibility, and blendability. Complete your transition from ASP.NET and WinForms to Silverlight and WPF by embracing the new tools of these platforms, and the new design style that they allow for. MVVM Survival Guide for Enterprise Architectures in Silverlight and WPF will get you up to speed and ready to take advantage of this powerful new presentation platform. What you will learn from this book Maximize separation of concerns by taking advantage of WPF and Silverlight's rich binding system, templates, and commanding infrastructure Discover the built-in support for MVVM in Entity Framework and WCF Create unit testable user interfaces the MVVM way Work in parallel with minimal dependencies by creating blendable architectures Solve common MVVM problems both with and without frameworks depending on your preference Extend your architecture and test it by using inversion of control frameworks Tackle complex designs by using hierarchical view model design and mediators Reduce the amount of code in your user interface by letting the WPF and Silverlights binding system eliminate your need to do things like casting controls and dispatching Best practices for dealing with collections Create designs that allow for dramatically changing your user interface without having to change code outside the view using data templates Approach This book combines practical, real-world examples with all the background material and theory you need The concepts are explained with a practical LOB enterprise application that is gradually built through the course of this book. MVVM offers lots of design choices and the author shows examples of each of these approaches, by changing the code to achieve the same results. Who this book is written for This book will be a valuable resource for Silverlight and WPF developers who want to fully maximize the tools with recommended best practices for enterprise development. This is an advanced book and you will need to be familiar with C#, the .Net framework, and Silverlight or WPF.