分享

第1章 MVVM模式介绍及业务应用程序

 昵称10504424 2014-02-28

Page 1~2

阅读完本章,你将学会:

模型、视图、视图模型(Model View ViewModel, MVVM)模式

MVVM模式由John Gossman(微软WPF及Silverlight软件架构师)于2005年在其博客中引入。MVVM是Presentation Model(PM)模式的专门化模型,后者由Martin Fowler在2004年作了论述。

PM模式的一个主要目标是从展示逻辑(presentation logic)中分离并抽象视图(View),使得用户界面(UI)可测试。视图即可视的用户界面(UI)。PM模式的其他目标可能包括让展示逻辑代码从不同的UI及不同的UI技术中可重用,减少UI和其他代码的耦合,允许UI设计者以一个更加独立的方式进行开发。MVVM模式是PM模式的一个专门化演绎,用于满足WPF和Silverlight的需求。

使用了MVVM模式的程序在结构上由三个主要组件构成:模型、视图和视图模型。

起初,只有WPF才有足够的机制满足MVVM模式的需求。在Silverlight 2中也实现了对MVVM模型的支持,但是实现起来比在WPF中困难一些。现在,随着Silverlight 4的发布,利用数据绑定、命令、行为和数据模板等技术,开发者可以使用同一种方式在WPF和Silverlight中实现MVVM模式。

当应用MVVM模式时,必须特殊处理ViewModel。因为它拥有非常多的责任,所以开发者非常容易创建一个杂乱的解决方案,在这个乱七八糟的解决方案会存在许多重复代码。然而,当使用正确的方法时,MVVM模式可节省时间、使UI可测试以及容易维护。当然,为了正确使用MVVM模式,必须掌握XAML及其UI结构。同时,需要熟悉XAML绑定引擎的工作方式,还要熟悉命令对象、命令行为(ICommand)和数据模板的结构。最后,为了在WPF和Silverlightk中高效使用MVVM模式,必须了解WPF和Silverlight之间的差异。

本书深入分析MVVM模式的每一个组件。最后,你会创建一个简单的MVVM模式业务应用程序,由此程序作为日后任意一个MVVM程序的模板。同时,你会构建一个小而实用的MVVM框架,其作为一个即插即用的功能组件,你可在你的WPF或Silverlight程序中使用,以便简化MVVM程序的编码。例如,该框架将提供一个基础的ViewModel类,一个示例消息代理(Message Broker)和其他一些典型MVVM模式程序需要的特性。

业务应用程序

从我的经验上看,学习技术的最佳方式是动手实践,逐步构建一个程序。使用业务应用程序(LOB)为蓝本是出于以下几个原由:

1、适合于弹性的UI技术

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多