zoukankan      html  css  js  c++  java
  • 个人总结:路由驱动与事件驱动

    路由驱动:也称数据驱动,如MVVM就是路由驱动

    事件驱动:比如MVC、MVP就是事件驱动

    区别

    1.mvp,mvc都是传统的事件驱动,你点个按钮,是不是要触发事件,这个就是事件驱动;

    2.但是数据驱动不一样,比如你用wpf,前面UI层控件绑定的是属性,后面代码逻辑处理的是数据值得改变,只要值变了,那个UI表现就跟着变了

    标准的WPF中是没有我们之前的事件,都叫路由事件,就是一层一层传递数据,以数据为中心,这样的好处就是减少了UI层与后面代码的耦合性

    3.以前我们在一个事件里写实现功能,都要考虑UI层控件的行为,隐藏不隐藏等等,要有处理UI的逻辑,现在不用考虑这个,本身UI层和后面逻辑都是分开的,减少交互,降低耦合,提高内聚。

    4.事件驱动和路由驱动可以说一个是被动的,一个是主动的。事件驱动,必须有个sender,也就是引起事件的触发者;路由事件是被动的,只要数据发生改变,就一层一层向上抛,直到抛给需要的地方为止,不受sender控制。

  • 相关阅读:
    继续聊WPF——进度条
    转 std::vector成员函数
    转: std::string用法详解
    TCP,IP,HTTP,SOCKET区别和联系
    C语言中的字符串截取函数及应用
    字符串截取函数
    VIM快捷键:
    TCP/IP,HTTP,SOAP等协议之区别
    【转】 c语言string类函数实现汇总
    int型转化为std::string
  • 原文地址:https://www.cnblogs.com/CocoWang/p/3683380.html
Copyright © 2011-2022 走看看