对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模型和三层框架以及区别和优缺点 建议收藏!
posted @ 2021-03-04 19:13  LeeHua  阅读(241)  评论(0编辑  收藏  举报