MVVM是Model-View-ViewModel的简写。即模型-视图-视图模型。【模型】指的是后端传递的数据。 【视图】指的是所看到的页面。【视图模型】mvvm模式的核心,它是连接view和model的桥梁。 它有两个方向: 一是将【模型】转化成【视图】,即将后端传递的数据转化成所看到的页面。实现的方式是:数据绑定。 二是将【视图】转化成【模型】,即将所看到的页面转化成后端的数据。实现的方式是:DOM 事件监听。 这两个方向都实现的,我们称之为数据的双向绑定。总结:在MVVM的框架下视图和模型是不能直接通信的。 它们通过ViewModel来通信,ViewModel通常要实现一个observer观察者,当数据发生变化, ViewModel能够监听到数据的这种变化,然后通知到对应的视图做自动更新,而当用户操作视图, ViewModel也能监听到视图的变化,然后通知数据做改动,这实际上就实现了数据的双向绑定。 并且MVVM中的View 和 ViewModel可以互相通信。 MVVM优点 MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点 1. 低耦合。视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上, 当View变化的时候Model可以不变,当Model变化的时候View也可以不变。 2. 可重用性。你可以把一些视图逻辑放在一个ViewModel里面,让很多view重用这段视图逻辑。 3. 独立开发。开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计, 使用Expression Blend可以很容易设计界面并生成xaml代码。 4. 可测试。界面素来是比较难于测试的,而现在测试可以针对ViewModel来写。 Vue就是基于MVVM模式实现的一套框架,在vue中:Model:指的是js中的数据,如对象,数组等等。 View:指的是页面视图viewModel:指的是vue实例化对象为什么说VUE是一个渐进式的javascript框架,
- 浏览: 1196760 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (1027)
- 拼接字符串小技巧 (1)
- JAVA 模块知识小结 (23)
- Tools (14)
- Android (20)
- ExtJS必学必会 (1)
- Nginx (4)
- 中间件 (9)
- java中间件 (6)
- linux (47)
- 23种设计模式 (15)
- 数据库知识 (15)
- Mycat中间件 (80)
- 华为框架--jalor5 (2)
- 数据库-----DB2 (24)
- 数据库-----ORACLE (47)
- 数据库-----MYSQL (82)
- 大数据 (16)
- 大数据--HBASE (4)
- 大数据--Storm (9)
- 大数据--Hive (5)
- 大数据--Hadoop (11)
- 大数据--ElasticSearch (16)
- 大数据--ZooKeeper (13)
- 大数据--redis (17)
- 大数据--Kafka (26)
- 大数据--MongoDB (9)
- 大数据之Flume (4)
- 大数据--sqoop (3)
- 大数据--SPARK (7)
- 大数据--memcached (1)
- 大数据------Impala (1)
- 大数据--Avro (1)
- 大数据--Apache Pig (1)
- 大数据--Logstash (1)
- 大数据--Kibana 简介 (1)
- 大数据之Impala (1)
- 大数据之Druid-IO介绍 (1)
- 大数据之HUE (1)
- 大数据之Ambari (1)
- 大数据之Presto (1)
- 大数据之Oozie (1)
- 编程语言之Python (4)
- 编程语言--PHP (5)
- 编程语言--Scala (2)
- 编程语言--JAVA之Mybatis (26)
- 编程语言之Ruby (2)
- 编程语言之C (2)
- 编程语言--JAVA之Spring (7)
- 编程语言--JAVA之Struts (1)
- 编程语言JAVA Hibernate (6)
- 编程语言之Kotlin (1)
- 编程语言--JAVA之网络编程 (3)
- 编程语言之Go (3)
- 编程语言之Erlang (1)
- erlang语言 (1)
- 算法研究--查找 (8)
- 算法研究--排序 (10)
- 网络协议 (47)
- 版本控制工具 (6)
- JAVA基础知识 (20)
- 负载均衡 (14)
- Hessian (1)
- 阿里之RocketMQ (5)
- 阿里之Canal (2)
- 阿里之TDDL (1)
- 阿里之DRDS (1)
- 阿里Dubbo框架 (2)
- 阿里JStorm框架 (3)
- 阿里之yugong (2)
- 阿里之Druid框架 (3)
- 阿里之cobar (1)
- Docker (17)
- VPN虚拟专网 (1)
- JFinal (1)
- JAVA语言基础 (23)
- HAProxy简介 (5)
- Netty介绍 (1)
- Squid介绍 (1)
- ZeroMQ (1)
- JVM深入研究 (4)
- Kerberos (1)
- Shiro (1)
- R语言 (2)
- CAS (2)
- Spring Security (1)
- 虚拟化技术 (10)
- python (2)
- Wireshark (1)
- JAVA_WEB 开发 (6)
- I/O模型 (1)
- Apache Mina (1)
- Apache Solr (2)
- Apache Nutch (1)
- Apache nifi (1)
- Apache Phoenix (1)
- Apache Thrift (1)
- Apache --Groovy (2)
- Apache Tika (1)
- Apache JMeter (1)
- Apache 之CouchDB (1)
- Apache之XML-RPC (1)
- 读书笔记 (4)
- 统计分析系统--SAS (1)
- Java Applet (1)
- JAVA之XStream (1)
- java之FreeMarker (1)
- JAVA 之WebWork (1)
- JAVA之velocity 介绍 (1)
- JAVA之Excel的导入(出) (4)
- Node.js (1)
- 信息安全 (2)
- Flex 编程 (1)
- 大数据--Alluxio (1)
- Jenkins (1)
- XDoclet (1)
- Play 框架 (1)
- ESB (2)
- JAVA之SiteMesh (1)
- JAVA 之Tiles (1)
- JAVA之工作流系统 (5)
- Apache之Tajo (1)
- 搜索引擎知识 (1)
- Apache 之Chukwa (1)
- Apache 之 ActiveMQ (2)
- Apache 之Accumulo (1)
- Apache之Lucene (2)
- Apache S4 (2)
- Apache之Tez (1)
- Apache之TOMCAT (3)
- Apache Kylin (1)
- Apache 之Ivy (1)
- Apache之Mesos (1)
- Zenoss (1)
- 阿里妈妈-adhoc之mdrill (1)
- 分布式调用 (5)
- RPC之Zeroc ICE (3)
- Java之RMI (1)
- RPC框架之Apache-XML (1)
- 人工智能系统 (10)
- 构建工具Maven (6)
- 持续集成 (1)
- 缓存技术 (8)
- 数据库之SequoiaDB (1)
- 数据分析 (2)
- 自然语言处理 (10)
- 数据库----MariaDB (1)
- 压缩算法 (2)
- 消息队列之LMAX Disruptor (1)
- 分布式文件系统DFS (1)
- Kubernetes (1)
- 自动化部署框架 (2)
- 分布式文件系统Tachyon (1)
- OpenCV (1)
- 数据库--db4o (1)
- 任务调度--Azkaban (1)
- 消息队列 (3)
- Apache 之 Flink (1)
- 消息队列,StormMQ (1)
- 图形数据库 (1)
- Zuul (1)
- 网站加速 (1)
- CDN (1)
- 数据库之PostgreSQL (2)
- CQRS 命令查询职责分离模式 (1)
- CoreOS--ETCD (1)
- 工作流引擎--Snaker (1)
- HPCC (1)
- 数据库之Greenplum (1)
- 监控系统 (8)
- Neo4j (1)
- Apache之Calcite (1)
- 大数据分享 (4)
- 人工智能分享 (10)
- Apache 之Camel (1)
- Apache之 Crunch (1)
- 分布式缓存 (7)
- Apache 之Etch (1)
- Apache之 Karaf (1)
- Apache 之ODE (1)
- Eclipse安装插件 (1)
- Apache之Qpid (1)
- Apache 之Ranger (1)
- Apache 之Flink (1)
- Apache 之Lens (1)
- Apache之Zeppelin (1)
- Apache 之Mahout (1)
- Apache之 Samza (1)
- Apache 之VCL (1)
- Apache 之Synapse (1)
- Apache 之ORC (1)
- apache之Tapestry (1)
- 射频识别 (2)
- JAVA框架之spark (1)
- Web服务器 Tengine (1)
- web服务器之kangle (1)
- 全文检索 (1)
- Java开发框架之Ninja (1)
- Spring-Boot (2)
- 操作系统底层 (1)
- Java之Web框架Vert.x (1)
- JAVA之NIO框架 (1)
- CORBA (2)
- 敏感词过滤 (1)
- 前端语言 (18)
- 事处理务 (2)
- 网络爬虫 (1)
- 复杂SQL案例 (3)
- 经典理论 (1)
- 容器集群管理系统 (1)
- 代理服务器 (1)
- 微服务框架 (8)
- 编程语言--JAVA之Web (4)
- 存储知识 (2)
- 报表技术 (12)
- Tomcat专题研究 (7)
- 网络知识 (2)
- Web服务器 之WebLogic (2)
- 编程语言--JAVA之Email (5)
- Apache 之Velocity (1)
- java之Javassist (1)
- JAVA之工作流 (3)
- JAVA之Undertow (1)
- JAVA之Grizzly (1)
- java之Spray (1)
- JAVA之验证码 (8)
- JAVA之序列化 (1)
- JAVA 之RESTful (1)
- XML解析 (5)
- RPC框架之Motan (1)
- 数据库之ArangoDB (1)
- 【lanproxy】 (1)
- 【RPC框架之RPCX】 (1)
- RPC框架之gRPC (1)
- JavaWeb之G4Studio (1)
- 区块链 (1)
- Sphinx (1)
- 跟踪系统 (1)
- 多租户 (1)
- 大数据之数据采集应用 (2)
- JAVA 之文件操作 (10)
- 软件测试 (1)
- Apache 之DistributedLog (1)
- Apache 之 Ignite (1)
- 分布式配置中心 (1)
- 【SaaS 介绍】 (1)
- 【数据库之ArangoDB】 (1)
- 【数据处理之ETL】 (1)
- Undertow (1)
- JAX-RS (1)
- 【百度云消息推送】 (1)
- IOS (7)
- Kannel (1)
- ServiceComb (1)
- 微信 (2)
- 规则引擎 (1)
- 短地址 (1)
- Exam (1)
- FastDFS (1)
- Arthas (0)
- 阿里之Arthas (1)
- 阿里之Seata (1)
- 微服务 (1)
- 分布式事务 (1)
- Flink (2)
- Apache-Ranger (1)
- azkaban (1)
- Intellij Idea (1)
- Apache DolphinScheduler (3)
- PMP项目管理 (1)
- sentry介绍 (1)
- 堡垒机 (1)
- 对象存储服务简介 (1)
- prometheus (1)
- Hazelcast (1)
- dolphinscheduler (1)
- PMP (1)
- 数据库之ClickHouse (2)
- Telegraf (1)
- apache之Dolphinscheduler (1)
最新评论
-
gaojingsong:
jstl1point0 写道高级版本JDK可以直接安装不用配置 ...
【win7配置jdk 环境变量】 -
jstl1point0:
高级版本JDK可以直接安装不用配置了
【win7配置jdk 环境变量】 -
hdd901002:
光说明错误在哪里有什么用,解决方法啊。。。我也碰到了,一条jo ...
Mycat源码解读--错误之【can't find table define in schema 】 -
masuweng:
【JAVA之图片水印】 -
masuweng:
【JAVA之多线程下载文件实现】
发表评论
-
【 yapi 文档管理平台介绍】
2021-07-06 20:01 714YApi 是高效、易用、功能强大的 api 管理平台,旨在为 ... -
【webpack 介绍】
2019-04-02 10:51 859webpack 是一个现代 JavaS ... -
【二维码QRious 介绍】
2018-10-20 21:45 1354二维码又称QR Code,QR全称Quick Respon ... -
【GoEasy 介绍】
2018-05-10 22:09 768什么是GoEasy 1) 最简单的方式将消息 从服务器端 ... -
【报表之Flot 】
2018-03-08 22:20 636Flot is a pure JavaScript plot ... -
【CSS雪碧图 介绍】
2017-10-25 20:09 1649CSS雪碧图 即CSS Sprite,也有人叫它CSS精灵, ... -
【ajax 介绍】
2017-09-25 20:41 852ajax的名字 ajax 的全称 ... -
【Pushlet 介绍】
2017-08-23 22:01 1007Pushlet 是一个开源的 Comet 框架,Pushle ... -
【DWR 介绍】
2017-08-23 21:55 1099DWR is a RPC library which mak ... -
【JQuery之LigerUI 介绍】
2017-08-14 20:43 1165在开发web信息管理系统时,使用Web前端框架可以帮助我们快 ... -
【jQuery EasyUI 介绍】
2017-08-13 21:35 777What is EasyUI? easyui is a ... -
【Bootstrap 介绍】
2017-08-12 09:54 946Bootstrap 是最受欢迎的 H ... -
【AdminLTE 介绍】
2017-08-10 21:33 1423AdminLTE is a popular open sou ... -
【Vue.js介绍】
2017-07-30 22:06 973Vue.js(读音 /vju/, 类似 ... -
【AngularJS 介绍】
2017-07-30 18:13 1060AngularJS 诞生于2009年,由Misko Heve ... -
【Swagger UI 介绍】
2017-07-12 21:15 1014Swagger UI allows anyone — be ... -
【Node.js 介绍】
2017-06-26 21:26 745Node.js 是一个基于 Chrome ...
相关推荐
**Android MVVM 模式详解** MVVM(Model-View-ViewModel)模式是软件开发中的一个架构设计模式,尤其在Android应用开发中被广泛应用。它源自于微软的WPF(Windows Presentation Foundation)平台,后来逐渐在移动...
简单的Microsoft MVVM工具包示例 使用Microsoft的MVVM Toolkit的POC最小但可行的MVVM应用程序。 描述: 该项目包含的功能可以弥补Microsoft MVVM Toolkit的某些局限性。 该演示应用程序既简单又易于消化,但又足以...
1. **MVVM模式介绍**:MVVM模式由三个主要部分组成:Model(模型)、View(视图)和ViewModel(视图模型)。模型负责处理业务逻辑和数据,视图是用户界面,而视图模型作为模型和视图之间的桥梁,负责数据绑定和命令...
MVVM模式介绍** MVVM模式是一种软件设计模式,它将用户界面(View)与业务逻辑(ViewModel)分离,通过数据绑定(Data Binding)连接两者,而Model则负责处理应用程序的数据和业务规则。MVVM模式提高了代码的可测试...
此实例可能介绍消息总线(如EventAggregator)或者依赖注入(DI)容器,如Unity或AutoFac,来实现ViewModel间的解耦通信。依赖注入可以提高代码的可测试性和可扩展性,使得更换或添加服务变得容易。 在学习这些MVVM...
1. **MVVM模式介绍** MVVM模式是一种软件设计模式,它将业务逻辑(ViewModel)与用户界面(View)分离,通过数据绑定(Data Binding)将两者紧密联系起来。Model层负责处理数据和业务逻辑,ViewModel作为Model和...
介绍如何进行MVVM开发及价值所在,它能在WPF过程给我们带来哪些好处
**MVVM模式介绍** MVVM是一种软件设计模式,将业务逻辑(Model)、用户界面(View)和数据绑定(ViewModel)分离开来,使得UI的更新和数据模型的更新能够自动同步,降低了UI与业务逻辑的耦合度,提高了代码的可测试...
MVVM模式介绍 MVVM模式是软件设计中的一个重要概念,它分离了用户界面(View)与业务逻辑(Model),中间通过ViewModel进行通信。在MVVM中,View负责显示数据,Model处理业务逻辑,而ViewModel作为桥梁,使得View...
一、MVVM模式介绍 MVVM模式源于桌面应用开发,由微软在WPF框架中提出,随后被广泛应用于移动端。在Android中,MVVM将应用程序分为三个主要部分:Model(模型),View(视图)和ViewModel(视图模型)。这种分离使得...
**MVVM模式介绍** MVVM是一种软件设计模式,将业务逻辑(Model)、用户界面(View)和数据绑定(ViewModel)分离,使得代码更加模块化,易于测试和维护。在MVVM模式中: - **Model**:模型层,负责处理业务逻辑和...
- **Read Me First.docx**:这是通常用来介绍插件或项目的基本信息、安装步骤和使用指南的文档。开发者应该首先阅读这个文档以了解如何有效地利用提供的资源。 通过WPF MVVM模板插件,开发者可以更高效地开发WPF...
MVVM模式介绍** MVVM由三个主要部分组成:Model(模型)、View(视图)和ViewModel(视图模型)。Model负责处理数据和业务逻辑,View是用户界面,而ViewModel作为桥梁,连接Model和View,实现了数据双向绑定。 **2...
参考文章:http://www.wxzzz.com/973.html 这篇文章主要是介绍如何使用MVVMLight来绑定数据到界面中(View),以此来了解MVVMLight的一些基础的类的用法。 文章底部会提供本示例的源码下载。 MVVMLight绑定数据示例
**WPF介绍** Windows Presentation Foundation(WPF)是微软推出的一种用于构建Windows桌面应用程序的框架。它提供了一整套丰富的图形渲染、数据绑定、布局管理、媒体支持和资源管理等功能,极大地提高了开发者构建...
在本文中,我们将详细介绍 MVC 和 MVVM 模式的概念、原理、特点和应用场景。 MVC 模式 MVC 模式是最早出现的软件设计模式之一,由 Trygve Reenskaug 于 1979 年提出。MVC 模式的核心思想是将应用程序分为三个部分...
**Qt5.13.0框架介绍:** Qt是一个跨平台的C++图形用户界面库,支持Windows、Linux、macOS等操作系统。Qt5.13.0版本引入了许多改进和新特性,如增强的QML(Qt Modeling Language),更好的性能优化以及对现代C++特性...
- MVVM模式介绍:[MVVM Pattern](https://docs.microsoft.com/zh-cn/xamarin/xamarin-forms/enterprise-application-patterns/mvvm) - 数据绑定和依赖属性:[Data Binding Overview]...
以下将详细介绍在WPF MVVM模式下如何实现窗口的ShowDialog功能。 首先,了解MVVM模式的基本原则。MVVM的核心思想是解耦视图(View)和业务逻辑(Model),通过ViewModel作为桥梁进行通信。ViewModel负责处理数据和...