码迷,mamicode.com
首页 > Windows程序 > 详细

MVVM(微软的WPF基础)-MVC(常用开发模型/设计)-WPF(微软.NET Framework

时间:2015-08-17 15:47:00      阅读:282      评论:0      收藏:0      [点我收藏+]

标签:

最近看 好多人说IOS MVC 过时了 要用MVVM 什么什么的,感觉 很新奇,就去搜了一下,发现原来所谓的MVVM就是 之前微软在10年左右就推出的WPF ,鄙人不才,搞过两年多的C#开发,因此 做了下比较:

首先来看一下 WPF

WPF(Windows Presentation Foundation)是微软推出的基于Windows Vista的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。

那么 应用说道MVVM就是:

技术分享

再来看下经典的MVC:

技术分享

其实这就是 把VIEW层 再次分一下 分成view和view controller层 这让我想起了 之前的三层架构和MVC

三层架构是最基本的项目分层结果,而MVC则是三层架构的一个变体,MVC是一种好的开发模式。首先你要明白MVC分别代表的是什么意思.
M 即Model(模型层),主要负责出来业务逻辑以及数据库的交互
V 即View(视图层),主要用于显示数据和提交数据
C 即Controller(控制器),主要是用作捕获请求并控制请求转发

三层:UI 界面层 BLL 业务逻辑层,DAL数据访问层,Model 实体层
MVC中的的M 不是三层中的Model(实体层),他其实包括三层中的 BLL,DAL,Model,这是非常要注意的,这也是他们之间的区别的关键所在

其有点有如下:
低耦合性
高重用性和可适用性
较低的生命周期成本
快速的部署
可维护性
有利于软件工程化管理

当然优点也有缺点,那就是内部结构复杂,不容易理解,文件数量大,管理难度自然也就大

其实 本来是没有区别的 或者说 是相互关联的 具体就是技术分享

把不同的层次打乱 然后拆分出新的层次,这就是区别,额,感觉 现在的模式都是这样 ,可能对易老程序员来说,原来的用的顺手了,但是 对于初学者,这些感念简直就是噩梦,MVC是一种万金油一样的存在,你说他是设计模式也好,框架也好,总之我认为 好用就行,MVVM 通俗来说是这样是实现的

Model层是少不了的了,我们得有东西充当DTO(数据传输对象),当然,用字典也是可以的,编程么,要灵活一些。Model层是比较薄的一层,如果学过Java的小伙伴的话,对JavaBean应该不陌生吧。

ViewModel层,就是View和Model层的粘合剂,他是一个放置用户输入验证逻辑,视图显示逻辑,发起网络请求和其他各种各样的代码的极好的地方。说白了,就是把原来ViewController层的业务逻辑和页面逻辑等剥离出来放到ViewModel层。

View层,就是ViewController层,他的任务就是从ViewModel层获取数据,然后显示。

最后 放几张 我从网上找的别人设计的MVVM的 框架 目前我也正在研究 具体是MVC好还是MVVM好 仁者见仁智者见智,,,

技术分享

技术分享

技术分享

技术分享



MVVM(微软的WPF基础)-MVC(常用开发模型/设计)-WPF(微软.NET Framework

标签:

原文地址:http://my.oschina.net/rainwz/blog/493460

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!