• 对MVC设计思想的理解


    jsp演变历史

    1. 早期只有servlet,只能使用response输出标签数据,非常麻烦。
    2. 后来jsp简化了Servlet的开发,如果过度使用jsp,在jsp中写大量的java代码,又写html标签,造成难于维护,难于分工协作。
    3. 再后来,java的web开发,借鉴mvc设计思想,使得程序的设计更加合理性

    MVC设计思想

    • MVC不是一种设计模式,而是一种设计思想,概念的区别:
      • 设计模式:是一种固定的方法,不灵活,有特定的使用场景;
      • 设计思想:是一种思想,比较灵活,由多种设计模式组合实现。
    • MVC的设计思想:
      1. M(Model):主要功能提供数据(主要用来提供数据,不关心数据让谁显示(Controller 负责给M要数据,然后控制数据让哪一个View来显示));
      2. V(View):主要功能是展示数据(主要有数据即可,不关心数据来源);
      3. C(Controller):主要功能协调V层与M层,作为V层与M层沟通的桥梁。

    流程:

    1. 首先浏览器发送请求,Controller获取用户的请求,
    2. 然后Controller调用Model,让Model里的业务操作来进行处理,
    3. Model处理完毕后将返回的模型数据返回给Controller,
    4. Controller根据模型返回会的数据选择视图,展示模型。
    20200605213847

    MVC优缺点

    1. 优点:
      1. 降低代码耦合性,方便维护,可以利于分工协作。所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其他层中的代码。
      2. 有利于组件的重用。如控制层可独立成一个能用的组件,表示层也可做成通用的操作界面。可以为一个模型在运行时同时建立和使用多个视图。
    2. 缺点:
      1. 增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
      2. 对开发人员要求高。
      3. 视图层展示依赖与模型层,视图层需要很少的字段,但是模型层全部提供,性能上有一定影响。

    参考文献

    1. 怎么理解MVC设计思想
    2. 荐 两张图彻底搞懂MVC模型和三层框架以及区别和优缺点 建议收藏!
    Good Good Write Bug, Day Day Up
  • 相关阅读:
    ApkTool动态打包
    Android
    hi3531 SDK 编译 uboot, 改动PHY地址, 改动 uboot 參数 .
    Unityclient通信測试问题处理(二)
    LIVE555研究之三:LIVE555基础
    【Unity Shaders】使用CgInclude让你的Shader模块化——创建CgInclude文件存储光照模型
    deep-learning-frameworks
    Upgrade R (升级R语言)
    Upgrade Bioconductor
    linux 中 ll 命令如何让查询结果按时间升序或降序排序?
  • 原文地址:https://www.cnblogs.com/liyihua/p/14482446.html
Copyright © 2020-2023  润新知