zoukankan      html  css  js  c++  java
  • 中型WPF客户端开发项目总结(2)

    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`,可自定义性增强;

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

  • 相关阅读:
    LeetCode Valid Sudoku
    接下来复习的重点
    leetcode:LRU Cache
    [leetcode] Insertion Sort List
    [QT Creator]LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 。
    [leetcode]Sort List
    李开复的七封信
    (归并排序)
    应聘面试自我介绍范文
    判断一颗二叉树是否是平衡二叉树
  • 原文地址:https://www.cnblogs.com/godlessspirit/p/12682037.html
Copyright © 2011-2022 走看看