中型WPF客户端开发项目总结 - 谈谈MVVM框架

MVVM介绍

mvvm的历史已经很久了,现在前端3大框架也都是遵照这个模式设计,相信大家也都清楚。

mvvm这个模式最初应该就是由wpf引进的,由MVC、MVP发展而来,最主要的特性就是双向绑定的概念。

这四个字母分别表示:m(model)模型、v(view)视图、vm(viewmodel)视图模型。

具体含义我也不多说,光从字面意思很好理解,实在不了解的可以搜索引擎搜一下。

“框架”

关于这两个字,我的理解如下:

1. 开发的最基础脚手架,提供开发约束

2. 在1的基础上,提供模块化开发的能力

3. 便捷的SDK和技术抽象、封装,方便上层开发

4. 其它(记起来再补充)

我的选择

本人从事客户端开发5年多,但研究MVVM框架的品种得着实不多,目前只使用过Prism和DevExpress自带的框架。这两个框架的源码看得也比较多(不过现在已经忘得差不多了,原因后面再讲),应该算是相对比较成熟的框架了。我所知道的mvvm框架还有很多,比如近些年比较流行的`ReactiveUI`、`MvvmCross`等,都是比较优秀的,应用也很广泛。

我这个栏目所说的项目中没有使用mvvm框架,原因如下:

1. 该项目由我一个人独立开发,开发约定了熟于我心;

2. “框架”也是代码,它们能实现的,我也能实现(开源的好处);

3. 模块之间的通信有其它技术手段解决;

4. 我不需要太过复杂的功能;

5. 没有框架,我可以使用自己喜欢的IOC容器、自己的`Startup`,可自定义性增强;

目前,没有使用框架的客户端运行十分良好。

猜你喜欢

转载自www.cnblogs.com/godlessspirit/p/12682037.html