zoukankan      html  css  js  c++  java
  • 理解MVC模式

    MVC是Model-View-Controller的简称,即模型-视图-控制器。

    MVC是一种设计模式,它强制性地将应用程序的输入、处理、输出流程按照模型、视图、控制器的方式进行分类,并被分成3层:

      模型层、视图层、控制层。

      1.视图

      • 代表用户交互界面。
      • 视图向用户显示相关的数据,并能接收用户输入的数据,但是它并不进行任何实际的业务处理。
      • 视图可以向模型查询业务状态,但不能改变模型。
      • 视图还能接收模型发出的数据更新事件,从而对用户界面进行同步更新。

      2.模型

      • 模型是业务流程/状态的处理以及业务规则的制定。
      • 业务流程的处理过程对其他层来说是黑箱操作,模型接收视图请求的数据并返回最终的处理结果。
      • 一个模型能为多个视图提供数据。由于同一个模型可以被多个视图重用,所以提高了可重用性。
      • 业务模型的设计是MVC最主要的核心。

      3.控制器

      • 控制器可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
      • 控制层不做任何数据处理。
      • 比如:用户单击一个链接,控制层接收请求后,并不处理业务信息,而只将用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
      • 一个模型可能对应多个视图,一个视图也可能对应多个模型。

      MVC的优点

      • 多个视图能共享一个模型。
      • 在MVC设计模式中,模型响应用户请求并返回响应数据,视图负责格式化数据并将它们呈现给用户,业务逻辑和表示层分离,同一个模型可以被不同的视图重用,大大提高了代码的可重用性。
      • 模型是自包含的,与控制器和视图保持相对独立,所以可以方便地改变应用程序的数据层和业务规则。
      • 由于MVC的3个模块相对独立,改变其中一个均不会影响其他俩个,所以依据这种设计思想能构造良好的松耦合的构件。

      MVC处理过程

      • 首先,控制器接收用户的请求,并决定应该调用哪个模型来进行处理。
      • 然后,模型根据用户请求进行相应地业务逻辑处理并返回数据。
      • 最后,控制器调用相应地视图来格式化模型返回的数据,并通过视图呈现给用户。
  • 相关阅读:
    04、Unity_声音管理器
    StreamingAssets文件夹的读取异常
    Unity做360度的全景照片
    07.C#中如何排除/过滤/清空/删除掉字符串数组中的空字符串
    03、三种简单的计时器
    02、在层级未知情况下通过递归查找子物体
    Java中请优先使用try-with-resources而非try-finally
    Redis——入门学习笔记
    KafKa——学习笔记
    SpringBoot——学习笔记
  • 原文地址:https://www.cnblogs.com/zhengbin/p/5579058.html
Copyright © 2011-2022 走看看