• MVC 编程模型及其变种


    MVC 编程模型及其变种

    MVC全称是Model View Controller, 这是一个模型(model)-查看(view)-调节器(controller)缩写,这是通过通用的编程模型非.MVC当为了分离数据和视图首次提出,数据和实体之间的关系.这就是关注点分离的设计理念,也是单一职责原则(Single-Resposibility Principle).

    在我们的开发过程中, 视图用来展现界面, 我们的模型处理业务, 持有数据, 而控制器是他们之间的中间人.

    GoF四人组觉得MVC是"一组用于构建用户界面的类的集合,是其他三个经典的设计模式的演变:观察者模式, 策略模式, 组合模式".详细的实现可能还会用到工厂模式,装饰器模式

    以下介绍一下MVC及其变种

    VC模式(view --> controller)

    这样的模式用于简单的界面,代码量不多的情况.一般业务代码都是控制器里.

    1. 用户点击屏幕,传递一个点击事件给视图
    2. 视图把点击事件传递给控制器
    3. 控制器运行逻辑
    4. 控制器把新的数据返回给视图
    5. 视图展示新的数据给用户

    VMC模式(view --> model --> controller)

    这样的模式以下,视图先传递的对象是模型,模型能处理的话,根本就不通知控制器,能够减轻控制器的代码量

    1. 用户点击屏幕, 传递一个点击事件给视图
    2. 视图把点击事件传递给模型
    3. 模型处理点击事件
    4. 模型处理不了的和额外要处理的发消息给控制器
    5. 控制器运行逻辑
    6. 控制器把数据返回给模型
    7. 模型再把数据返回给视图
    8. 视图展示新的数据给用户

    VCM模式(view --> controller --> model)

    这样的就是我们最常见的mvc模式了

    1. 用户点击屏幕, 传递一个点击事件给视图
    2. 视图把点击事件传递给控制器
    3. 控制器调用模型
    4. 模型运行逻辑
    5. 模型通知控制器,并返回数据
    6. 控制器接到数据后返回给视图
    7. 视图展示新数据

    事实上,折腾这些,最后目的是了解边界,因此,人们可以并行工作.

    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    【docker报错】starting container process caused "exec: "-P8080:8080": executable file not found in $PATH".
    java调用openoffice踩坑集
    SWERC 2019-2020 题解(全)
    【GYM102091】2018-2019 ACM-ICPC, Asia Nakhon Pathom Regional Contest F
    UVA10615 Rooks 二分图的边着色
    2020.07.20 牛客多校第四场
    2020.07.27 牛客多校第六场
    2020.07.18 牛客多校第三场
    Deepfake Video Detection Using Recurrent Neural Networks 阅读笔记
    网易互娱 8.7笔试 代码记录
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4814619.html
Copyright © 2020-2023  润新知