架构——MVC的理解

简介: 我一直以为我理解的MVC就是springMVC这些呢;前段时间和高人针对于MVC交流了一下,具体一点应该是请教了一下;结果完全超乎我的理解,没想到springmvc、mvp、后端mvc、mvvm都只是它的一个运用。

一、背景介绍


我一直以为我理解的MVC就是springMVC这些呢;前段时间和高人针对于MVC交流了一下,具体一点应该是请教了一下;结果完全超乎我的理解,没想到springmvc、mvp、后端mvc、mvvm都只是它的一个运用。


二、思路&方案


规范要求(所有资料和结果都要有大量依据):


  • 1.发展史
  • 2.百度百科的介绍(基础知识的概念宏观总结)
  • 3.官方文档(具体的细节和应用)
  • 4.优缺点
  • 5.使用场景
  • 6.同类对比
  • 7.图和代码的对应关系


三、过程


  • 1.发展史:

https://www.cnblogs.com/dadadechengzi/p/10028588.htmlhttps://blog.csdn.net/u012028371/article/details/53006075

https://www.cnblogs.com/jmqm/p/8688986.html

http://www.mybatis.cn/archives/634.html


  • 2.百度百科:

https://baike.baidu.com/item/MVC%E6%A1%86%E6%9E%B6/9241230?fromtitle=mvc&fromid=85990&fr=aladdin#6_2



  • 4.优势、劣势

优点

多视图共享一个模型,大大提高了代码的可重用性

MVC 三个模块相互独立,松耦合架构

控制器提高了应用程序的灵活性和可配置性

有利于软件工程化管理

总之,我们通过 MVC 设计模式最终可以打造出一个松耦合+高可重用性+高可适用性的完美架构。

缺点

原理复杂

增加了系统结构和实现的复杂性

视图对模型数据的低效率访问?


  • 5.使用场景

1.纯前端:mvvm

2.前后端:spring mvc

3.纯后端:mvc(v为数据存储容器)


  • 6.同类对比


  • 7.图和代码的对应关系(这里就先仅展示两个最终宏观图,具体的代码实现会在后续项目的重构的总结中展示)


3e50ea58ac874c6ba6a9dfc60acfb9c3.png

59b774c483bb4e98b77a364f848ad0a3.png


四、总结


  • 1.随着技术的演变,MVC的思想在不同阶段的呈现形式是不一样的,比如CS和BS的时代就有所不同


  • 2.针对于现在前后端分离的架构,纯后端mvc的理解,C就是对应的controller层、M就是装载数据的实体、V就是存储数据的容器(要返回给前端的html代码或者承载数据的容器)


  • 3.前端的MVVM,其中的M是存放样式布局的容器、V是渲染的html代码、VM是控制m和v绑定的东西


  • 4.按照这样的思路去落地实现,前端的那些组件复用、扩充、维护就显得轻轻松松了


五、升华


对于一个知识不同程度的理解以及不同的抽象层级决定了后续运用过程中落地的程度,没有高人的指导很多东西我们往往会看成透明的

期待自己的项目落地总结。

相关文章
|
18天前
|
设计模式 存储 前端开发
MVVM、MVC、MVP三种常见软件架构设计模式的区别
MVC、MVP 和 MVVM 是三种常见的软件架构设计模式,主要通过分离关注点的方式来组织代码结构,优化开发效率。
38 12
|
1月前
|
安全 数据管理 中间件
云LIS系统源码JavaScript+B/S架构MVC+SQLSugar医院版检验科云LIS系统源码 可提供演示
检验科云LIS系统源码是医疗机构信息化发展的重要趋势。通过云计算技术实现数据的集中管理和共享可以提高数据利用效率和安全性;通过高效灵活的系统设计和可扩展性可以满足不同医疗机构的需求;通过移动性和智能化可以提高医疗服务的精准度和效率;通过集成性可以实现医疗服务的协同性和效率。因此,多医院版检验科云LIS系统源码将成为未来医疗机构信息化发展的重要方向之一。
35 2
|
4天前
|
设计模式 前端开发 Java
【Spring MVC】快速学习使用Spring MVC的注解及三层架构
【Spring MVC】快速学习使用Spring MVC的注解及三层架构
9 1
|
19天前
|
存储 前端开发 数据库
MVC模式和三层架构
MVC模式和三层架构
29 2
|
1月前
|
前端开发 JavaScript 中间件
基于最新koa的Node.js后端API架构与MVC模式
基于最新koa的Node.js后端API架构与MVC模式
39 1
|
11天前
|
前端开发 测试技术 API
探索安卓应用的架构演进:从MVC到MVVM
本篇文章将深入探讨安卓应用开发中的架构演进,特别关注从传统的MVC(Model-View-Controller)到现代流行的MVVM(Model-View-ViewModel)架构的转变。通过对比两种架构的设计理念、实现方式和实际应用案例,解析MVVM在提高代码可维护性和可测试性方面的优势。
18 0
|
1月前
|
前端开发 Java 数据库
MVC架构简述
MVC架构简述
25 4
|
1月前
|
XML 前端开发 Android开发
Android架构设计——MVC,滴滴 战略 面试
Android架构设计——MVC,滴滴 战略 面试
|
1月前
|
XML 前端开发 Android开发
Android架构设计——MVC(1),Android多进程从头讲到尾
Android架构设计——MVC(1),Android多进程从头讲到尾
|
1月前
|
XML 前端开发 测试技术
安卓架构模式:MVC、MVP、MVVM及更多
【4月更文挑战第13天】本文探讨了安卓应用开发中的常见架构模式,包括MVC、MVP和MVVM,以及VIPER和Clean Architecture。MVC分离关注点,易于理解,但安卓不直接支持。MVP通过呈现器实现更清晰的分层和便于单元测试。MVVM利用数据绑定简化UI逻辑,适合声明式编程。开发者应根据项目需求、团队技能和维护周期选择合适架构,随着工具和框架的进步,未来将提供更多模块化、可测试性和敏捷性的解决方案。